由于Java一种单继承的语言即子类只能继承一个父类所以无法重用两个类的实现Groovy在这方面做了些改进引入了Mixin 现在让我们看一下Groovy中的Mixin的威力吧 // 创建一个Category以重用该类中的静态方法的实现class FileCategory {// 实现操作符(<<)重载( << 对应的方法为leftShift )static leftShift(self other) {// 将Hello 以及other中的内容写入self表示的文件中selfwrite( Hello $other )println done! }}// 利用关键字use使用之前创建的Categoryuse (FileCategory) {// 创建File的一个实例 并将Hello 山风小子写入该文件中注意不带双引号new File( hellotxt ) << 山风小子 } File类 已经继承了Object类 但它通过Groovy中Mixin重用了FileCategory类中leftShfit方法的实现 其相关细节说明已经注于代码中希望大家喜欢 :) |