はじめまして つい最近、MLに登録した白川です。
既存のクラスを拡張するために継承を使った場合について
教えてください。
例えば、Arrayクラスのように、Arrayクラスのオブジェクトを
返すメソッドがある場合、Arrayクラスを継承したMyArrayクラスの
オブジェクトに そのまま そのようなメソッドを呼び出すと
先祖がえりして、Arrayを返してしまいます。
これをMyArrayクラスが返るようにしたいのです。
どうすれば、ラク(^-^) でしょうか?
--- ここからコード ---
class MyArray < Array
def ppp
puts "ppp"
end
end
a = MyArray.new
a.push(999)
a.push(777)
b = a[0,1]
b.ppp #undefined method `ppp' for [999]:Array(NameError)
----------------------
白川貴久