**定义:**特质 (Traits) 用于在类 (Class)之间共享程序接口 (Interface)和字段 (Fields)。 它们类似于Java 8的接口。 类和对象 (Objects)可以扩展特质,但是特质不能被实例化,因此特质没有参数。
定义一个特质
最简化的特质就是关键字trait+标识符。
**作用:**Scala的特质可以封装成员和方法。java中的接口不提供具体的实现,Scala的特质同样也是丰庄一些成员属性和方法。
**Scala Trait(特征)**相当于 Java 的接口,实际上它比接口还功能强大。
与接口不同的是,它还可以定义属性和方法的实现。
一般情况下Scala的类只能够继承单一父类,但是如果是 Trait(特征) 的话就可以继承多个,从结果来看就是实现了多重继承。