コンストラクタを複数持ちたい場合
Rubyは、コンストラクタ用のメソッドとして、initializeがあるけど
どうやら、initializeは、複数定義できないようだ。
この場合、コンストラクタではないが、newの代わりのメソッド作って、
中で自身をnewして、代入って方法で代用できる。
class ClassA def self.new_create(data1,data2) obj = self.new obj.data1 = data1 obj.data2 = data2 obj end …… end
こんな風に使える。
ca = ClassA.new_create(data1,data2)
「Railsによるアジャイルwebアプリケーション開発 第3版」の135ページを参考。
もちろん、コンストラクタとは書いてない。
なんとなくnewして代入なら、コンストラクタとしての使い方もできるなと思った。