Groovy - Traits 特征
Traits 特征是语言的结构构造,它允许 −
- 行为构成。
- 接口的运行时实现。
- 与静态类型检查/编译的兼容性
它们可以被视为同时承载默认实现和状态的接口。 使用 trait 关键字定义特征。
下面给出了一个特征的例子 −
trait Marks { void DisplayMarks() { println("Display Marks"); } }
然后可以使用 implement 关键字以与接口类似的方式实现特征。
class Example { static void main(String[] args) { Student st = new Student(); st.StudentID = 1; st.Marks1 = 10; println(st.DisplayMarks()); } } trait Marks { void DisplayMarks() { println("Display Marks"); } } class Student implements Marks { int StudentID int Marks1; }
实现接口
Traits 可以实现接口,在这种情况下,接口使用 implements 关键字声明。
下面给出了实现接口的 trait 示例。 在以下示例中,可以注意以下关键点。
接口 Total 使用 DisplayTotal 方法定义。
trait Marks 实现了 Total 接口,因此需要提供 DisplayTotal 方法的实现。
class Example { static void main(String[] args) { Student st = new Student(); st.StudentID = 1; println(st.DisplayMarks()); } } trait Marks { void DisplayMarks() { println("Marks1"); } } trait Total extends Marks { void DisplayMarks() { println("Total"); } } class Student implements Total { int StudentID }
上述程序的输出将是 −
Total