概要
Object#initialize(*args, &block) -> object
詳細
ユーザ定義クラスのオブジェクト初期化メソッド。
new から呼び出される処理で、 new に渡された引数をそのまま引き継ぐ。
ユーザーが作成するクラスで再定義されることを期待されている。
サンプルコード
require 'tbpgr_utils' class Person attr_reader :name, :age attr_accessor :nationality def initialize(name , age, &block) @name, @age = name, age block[self] if block_given? end end tanaka = Person.new("tanaka", 24) tanaka.nationality = "Japanese" dhh = Person.new("dhh", 35) do |e| e.nationality = "Danish" end bulk_puts_eval binding, <<-EOS tanaka dhh EOS __END__ 下記はTbpgrUtils gemの機能 bulk_puts_eval https://rubygems.org/gems/tbpgr_utils https://github.com/tbpgr/tbpgr_utils
出力
tanaka # => #<Person:0x2c3f880 @age=24, @name="tanaka", @nationality="Japanese"> dhh # => #<Person:0x2c3f838 @age=35, @name="dhh", @nationality="Danish">