mksc source (0.0.5) | 2010-01-11 22:11 |
mksc win32-binary (0.0.5) | 2010-01-11 22:12 |
module モジュール名 モジュールメソッド定義 インスタンスメソッド定義 モジュール変数定義 インスタンス変数定義 end
module MyModule # モジュールが組み込まれたクラスのインスタンス変数、インスタンスメソッドに展開されます。 @mInstanceVariable = 1 def mInstanceMethod( ) end # モジュールが組み込まれたクラスのクラス変数、クラスメソッドに展開されます。 @@moduleVariable = 2 def module.moduleMethod( ) end end class MyClass import m = MyModule using m end
class MyClass # import節により、MyModuleの内容が @m, @@m に代入される MyModule @m @mInstanceVariable = 1 def mInstanceMethod( ) end MyModule @@m @@moduleVariable = 2 def module.moduleMethod( ) end # using節による m の組み込み @mInstanceVariable def mInstanceMethod( ) end @@moduleVariable = 0 def module.moduleMethod( ) end end
p = MyClass.new() Console.println( p.@m.@mInstanceVariable ) # => 1 Console.println( p.@mInstanceVariable ) # => 1 p.@mInstanceVariable = 2 Console.println( p.@m.@mInstanceVariable ) # => 2 Console.println( p.@mInstanceVariable ) # => 2
module MyMoudle_1 def method_1() end end module MyMoudle_2 def method_1() end end class MyClass import m1 = MyModule_1 import m2 = MyModule_2 using m1 using m2 # error:method_1 has already defined. end
[PageInfo]
LastUpdate: 2010-01-04 18:30:05, ModifiedBy: mikenekodx
[Permissions]
view:all, edit:members, delete/config:doc editors