伝統的かどうかわからないが、RubyはJavaなどにあるようなコンストラクタを持っておらず、代わりにnewメソッドから呼ばれるinitializeという特別なメソッドを定義することによりオブジェクトを初期化することができます。
特に定義しなければ、BasicObjectクラスに定義されているinitializeメソッドが呼ばれますが、中身は空なので何も起こりません。
initializeメソッドもほかのメソッドと同じくようにメソッド探索を行い、最初に見つかったinitializeメソッドを実行します。
続きを読む