所有的面向对象的语言都不允许直接的多重继承,因为会出现“deadly diamond of death”问题。Scala提供了特质(trait),特质可以同时拥有抽象方法和具体方法,一个类可以实现多个特质。
特质和抽象类不同的是,抽象类只能被继承一次,而这个特质可以被混入多次
我定义了10个抽象类,我某一个类想把10个抽象类全继承是不可能的,这是不行的
但是说,我定义了10个特质,我一个类把10个特质全部继承下来是可以的,这是可以的,类似于Java 中的接口,但是不一样,特质比接口强大的多