Rubyのクラスとオブジェクトの概要
728 ワード
puts "hello ruby"
ルビーは完全にオブジェクト向けの言語で、すべてがオブジェクトで、いわゆる基本的なタイプはありません.オブジェクトはクラスのインスタンスですが、クラス自体もオブジェクトです.したがって、クラスメソッドを追加する方法でインスタンスメソッドを追加したり、逆にインスタンスメソッドを追加する方法でクラスメソッドを追加したりすることができます.この柔軟性のため,Ruby自身が提供するクラスを含む任意のクラスにメソッドを追加することができる.
たとえば、Objectクラスはデフォルトのオブジェクトの親です.
クラスを定義します
class A
end
それは
class A < Object
end
Objectにインスタンスメソッドを追加できます
class Object
def hello
puts "hello ruby objext"
end
end
Aのインスタンスを作成
a = A.new
a.hello
クラスのインスタンスをもう1つ作成
b = Array.new
b.hello
Objectを継承しているため、helloメソッドがすべて表示されます.これはJAVAでは実現しにくい