tanish-kr's learning log

Learning output log

Ruby

変数と定数

ローカル変数

小文字または’_‘で始まる識別子はローカル変数またはメソッド呼び出しです。

ローカル変数のスコープ

  • ブロック
  • メソッド定義
  • クラス・モジュール定義
  • トップレベル

インスタンス変数

@で始まる変数はインスタンス変数で、特定のオブジェクトに所属している。初期化されていないインスタンス変数を参照した場合はnilが帰る。

疑似変数

  • self : 現在のメソッドの実行主体
  • nil : NilClassの唯一のインスタンス
  • true : TrueClassの唯一のインスタンス
  • false : FalseClass唯一のインスタンス。nilとfalseは儀を表す
  • FILE : 現在のソースファイル名。フルパスとは限らないため、フルパスが必要な場合は、File.expand_path(__FILE__)とする必要がある
  • LINE : 現在のソース・ファイ中の行番号
  • ENCODING : 現在のソースファイルのスクリプトエンコーディング

疑似変数の値を変更することは出来ない。疑似変数へ代入すると文法エラーになる。

定数

アルファベットの大文字で始まる識別子は定数。定義されていない定数にアクセスすると、NameErrorとなる。

FOO = "foo".freeze