メソッドと変数

Rubyのクラスとインスタンスが使いこなせるのか…

そもそも使い分けに対する不安があるので、まとめてみようと思います。

 

メソッド

クラスメソッド

クラスが使用できるメソッド。インスタンス個別の情報に関わらず、クラスの共通結果を返すメソッド。

定義:

 def self.メソッド名

呼び出し:

 クラス名.メソッド名(引数)

 

インスタンスメソッド

クラスに定義して、インスタンスが使用できるメソッド。インスタンの個別の情報によって、結果の戻り値が変わる。

定義:

 def メソッド名

呼び出し:

 インスタンス名 = クラス名.new

 インスタンス名.メソッド名(引数)

 

 

変数

ローカル変数

定義:

 変数名 =

スコープ:

 定義したメソッド内でのみ使用できる 

 

インスタンス変数

定義:

 @変数名 =

スコープ:

 定義したクラス内であれば、別のメソッド内でも使用できる