scala快速入门系列【特质】
本篇作为scala快速入门系列的第二十六篇博客,为大家带来的是关于 特质(trait) 的内容。 文章目录 特质(trait) trait作为接口使用 示例 | 继承单个trait 示例 | 继承多个trait 示例 | object继承trait 特质 | 定义具体的方法 trait中定义具体的字段和抽象的字段 使用trait实现模板模式 对象混入trait trait实现调用链模式 责任链模式 trait调用链 trait的构造机制 trait继承class 特质(trait) scala中没有Java中的接口(interface),替代的概念是——特质。 定义 特质是scala中代码复用的基础单元 它可以将方法和字段定义封装起来,然后添加到类中 与类继承不一样的是,类继承要求每个类都只能继承 一个 超类,而一个类可以添加 任意数量 的特质。 特质的定义和抽象类的定义很像,但它是使用 trait 关键字 语法 定义特质 继承特质 使用extends来继承trait( scala不论是类还是特质,都是使用 extends 关键字 ) 如果要继承多个trait,则使用 with 关键字 trait作为接口使用 trait作为接口使用,与java的接口使用方法一样。 示例 | 继承单个trait 创建一个Logger特质,添加一个接受一个String类型参数的log抽象方法