ジョギング
- 腰痛、悪天の為、お休み
日課
- お休み
腰痛
- 寒さも合わさって, だいぶん酷い
今日のるびぃ ~ クラスメソッド = 特定クラスの特異メソッドである件について ~
クラスメソッド, 特異メソッドとかが有耶無耶に理解している状態で, プロを目指す人のためのRuby入門 言語仕様からテスト駆動開発・デバッグ技法まで の第七章を読んでいて, 目から鱗だったのでメモ.
- 特異メソッド (singleton メソッド) を利用して, オブジェクト単位で挙動を変えることが出来る
- クラスメソッドは特異メソッドの一種
なるほど.
ということで, クラスメソッド (クラスに特異メソッドを定義したもの) の定義とと特異メソッドの定義について整理.
# クラスメソッドの定義 class User end # 定義方法 (1) def User.hello 'Hello.' end # 定義方法 (2) class << User def hi 'Hi.' end end # 特異メソッドの定義 foo = 'bar' # 定義方法 (1) def foo.hello 'Hello.' end # 定義方法 (2) class << foo def hi 'Hi.' end end
ほうほう, プロを目指す人のためのRuby入門 言語仕様からテスト駆動開発・デバッグ技法まで とても読みやすくて, 解りやすくて濡れる.