【Ruby】「小さい」クラスとは? プログラミングRuby学習感想文
この本を読んでいます。
- 作者: まつもとゆきひろ,David Flanagan,卜部昌平(監訳),長尾高弘
- 出版社/メーカー: オライリージャパン
- 発売日: 2009/01/26
- メディア: 大型本
- 購入: 21人 クリック: 356回
- この商品を含むブログ (124件) を見る
以下、気が付いたことなど。
眠い・・寝たい。
Stringはミュータブル
ってことは知ってるけど
ここまで繰り返されると、
「そもそもJavaではどうしてイミュータブルなんだろう」
と思って。
調べてみたら「そのほうが便利だから」。
ただしメモリとのトレードオフ、とのこと。
なるほど。
連続範囲・離散範囲
連続範囲の確認は cover?
離散範囲の確認は include? を使う
hoge = "aaa".."bbb" p hoge.include? "aacd" p hoge.cover? "aacd"
■実行結果
false true
リテラル と キーワードリテラル
「キーワードリテラル」はリテラル(直接コードに埋め込める)、かつ式のもの。
例えばtrue nil self __FILE__ など。
ふーむ。selfって変数じゃないんだ。
self = "hoge"
■実行結果
hoge18.rb:2: Can't change the value of self
なるほど。
定数は未初期化状態になり得ない
「定数は存在するなら何らかの値を代入されているのである」
class A B end
■実行結果
hoge18.rb:3:in `<class:A>': uninitialized constant A::B (NameError)
なるほど。
「小さい」クラス
より専門特化されている、より狭い型、という意味である。
class Base;end class Child < Base;end p Child < Base #<= true
おやすみなさい。。。