インスタンス変数への直接アクセスとアクセッサメソッドの使用
2023-08-02 11:22:21
質問
インスタンス属性にアクセスする際に
self.attribute
でアクセスするのと
@attribute
?
どのように解決するのですか?
self.attribute
はメソッドを呼び出します。
attribute
.
self.attribute = value
はメソッドを呼び出します。
attribute=
を引数として
value
.
@attribute
そして
@attribute = value
インスタンス変数の値を取得/設定する
@attribute
.
基本的には全く別のものなんですね。
しかし、もしあなたが
attr_accessor :attribute
というメソッドを定義しています。
attribute
を返すために
@attribute
というメソッドと
attribute=(value)
を設定する
@attribute = value
. ですから、その場合、違いはありません。
関連
-
[解決済み] Rubyでnilとemptyとblankを理解する方法
-
[解決済み] rake db:migrate db:reset とdb:schema:loadの違いについて
-
[解決済み] Rubyのincludeとrequireの違いは何ですか?
-
[解決済み] Ruby、execとsystemと%x()またはBackticksの違いについて
-
[解決済み】サーブレットはどのように動作するのですか?インスタンス化、セッション、共有変数とマルチスレッド
-
[解決済み】Railsの認証トークンを理解する
-
[解決済み】Rubyの "and "と"&&"の違い?
-
[解決済み】Rubyのクラスインスタンス変数とクラス変数の比較
-
[解決済み] インスタンス変数: self vs @
-
[解決済み] define_methodを使ってクラスメソッドを作成するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Gemfileでrubygemを指定するときの~>と>=の違いは何ですか?
-
[解決済み] Rubyの"==="演算子は何をするのですか?重複] [重複
-
[解決済み] rubyのClassとKlassの違いは何ですか?
-
[解決済み] rubyのinjectはreduceと同じ意味ですか?
-
[解決済み] Hash.new([]などのHashのデフォルト値を使用すると、予期せぬ動作(値が消える/変わる)が発生します。)
-
[解決済み] ローカルファイルやURLからIOストリームをオープンする
-
[解決済み] Rubyです。変数を文字列にマージする
-
[解決済み] Rubyで親のクラス名を取得するには?
-
[解決済み] FactoryGirlのbuildメソッドとcreateメソッドの違いは何ですか?
-
[解決済み] WindowsへのRubyGemsのインストール