Rubyにおけるトップレベル
Ruby におけるトップレベルとはなにかについて、そしてトップレベルにメソッドを記述する方法について解説します。
(Last modified: )
トップレベルとは
Ruby ではソースコードの一番外側の部分をトップレベルと呼びます。トップレベルには式を記述したり、メソッドを定義したり、クラスを定義したりすることができます。例えばプログラムの中に次のような式を記述した場合は、トップレベルに式を記述したことになります。
puts("Hello")
トップレベルに式を記述した場合、プログラムを実行するとトップレベルに記述された式が順に実行されていきます。
selfとmain
Ruby
では self
と呼ばれる擬似変数が用意されています。 self
をメソッド内で参照すると、そのメソッドを実行しているオブジェクトを参照することができます。
ではトップレベルで self
を実行するとどうなるのでしょうか。トップレベルは厳密にはメソッドではないのですが、 self
を実行すると main
と言うオブジェクトを返します。
puts(self.to_s)
main
オブジェクトの元になっているクラスは確認してみます。オブジェクトに対して class
メソッドを実行するとそのオブジェクトのクラスを取得できます。
puts(self.to_s) puts(self.class.to_s)
実行してみると main
オブジェクトの元になっているクラスは Object
クラスと表示されます。
つまり main
は Object
クラスのインスタンスです。
トップレベルに定義されたメソッド
メソッドはトップレベルで定義することが出きます。トップレベルで定義したメソッドは Object
クラスの private
インスタンスメソッドとして定義されます。
Object
クラスのインスタンスメソッドであるため、どこからでも呼び出すことができます。トップレベルからもメソッドを呼び出すこともできます。
では次のページ以降でトップレベルでメソッドを定義する方法について確認していきます。
-- --
Ruby におけるトップレベルとはなにかについて、そしてトップレベルにメソッドを記述する方法について解説しました。
( Written by Tatsuo Ikura )
著者 / TATSUO IKURA
これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。