[NAME] ALL.dao.class.mixin [TITLE] 组件类 [DESCRIPTION] 新类的定义也可包含其它类,这些类将作为组件融入(嵌入)到新类中。 在类定义里,组件类可放在括号 里列在新类名后面。 只有没有基类的类才可用作组件类。 1 class Base 2 { 3 var value = 456 4 routine Meth2(){ io.writeln( self, value ) } 5 } 6 7 class Mixin ( Base ) 8 { 9 var index = 123 10 11 routine Meth(){ io.writeln( self, index, value ) } 12 routine Meth2( a : string ){ io.writeln( self, index, value, a ) } 13 } 14 15 # 16 # The "Base" class will be presented only once in "Klass": 17 # 18 class Klass ( Base, Mixin ) 19 { 20 var index = 123456 21 routine Meth2( a : int ){ io.writeln( self, index, value, a ) } 22 } 23 24 var k = Klass() 25 26 io.writeln( k.index ) 27 28 k.Meth() 29 k.Meth2() 30 k.Meth2( 'abc' ) 31 k.Meth2( 789 )