Rubyで1つのクラスに複数のinitializeを定義した。
class a
def initialize( param1 )
...
end
def initialize( param1, param2 )
...
end
end
obj = a.new( "a" ) # NG
obj = a.new( "a1", "a2" ) # Good
オブジェクト生成時に1つだけパラメタを指定したところ、パラメタの数が足りないとのエラー。2つのinitializeの順番を入れ替えてみたが同じ。
→うそ。最後に定義されているinitializeが使用される。
Rubyのクラスではコンストラクタを複数もてないのか?
【Rubyバージョン】1.8.6-p111-i386-mswin32
【OS】Windows XP Professional Edition + SP2
class a
def initialize( param1 )
...
end
def initialize( param1, param2 )
...
end
end
obj = a.new( "a" ) # NG
obj = a.new( "a1", "a2" ) # Good
オブジェクト生成時に1つだけパラメタを指定したところ、パラメタの数が足りないとのエラー。2つのinitializeの順番を入れ替えてみたが同じ。
→うそ。最後に定義されているinitializeが使用される。
Rubyのクラスではコンストラクタを複数もてないのか?
【Rubyバージョン】1.8.6-p111-i386-mswin32
【OS】Windows XP Professional Edition + SP2