クラス
クラスとは
クラスはインスタンスを生成するための設計図のようなものです。
例えば、Arrayクラスから配列が生成されます。
Array.new #=> []
インスタンスのクラスを調べる
インスタンスのクラスを調べる場合は、class
メソッドを呼び出します。
[].class #=> Array
クラスはClassクラスのインスタンス
クラス自身もオブジェクトで、Classクラスのインスタンスです。
Array.class #=> Class
メソッドの定義
クラスではメソッドを定義することができます。 クラス固有のメソッドを定義したり、継承したりできます。
class Hoge
def hello
puts "Hello!!"
end
end
hoge = Hoge.new
hoge.hello # Hello!!
継承
すでにあるクラスを拡張することを継承といいます。 継承すると、親クラスのメソッドを小クラスで使用することができます。
class 子クラス < 親クラス
のように書きます。
class Hoge
def hello
puts "Hello!!"
end
end
class Foo < Hoge
end
foo = Foo.new
foo.hello # Hello!!