【Java】Javaでの「関数渡し」の実現方法。 パーフェクトJava学習感想文 その4
パーフェクトJavaを読んで改めてJavaを振り返り中。
パーフェクトPHP ⇒0.5キロ減
パーフェクトRuby ⇒2キロ減
今度は何キロ痩せるかな。
子供を産んでも体重が変わらなかった私からすると、
「体重が落ちる」なんて、かつてない経験。。
経緯については学習記録その1をご参照ください。
以下、学んだこと。
「変数」と「オブジェクト」の型
Base my = new My();
改めて変数とオブジェクトを理解した上で見ると、
上のコードは
・変数(箱)の型がBase
・オブジェクト(中身)の型がMy
と言っているわけで。
なるほど。
呼ばれるメソッドの実体は、 隠蔽時:変数の型で決まる オーバーライド時:オブジェクトの型で決まる
なるほど。
JavaにはCollections#binarySearchメソッドが存在する。
知らなかった!
Rubyにもあるのかなと調べてみたら、
2.0からArrayクラスにbsearchメソッドが追加されたよう。
http://ruby-doc.org/core-2.0.0/Array.html
知らなかった。
ソートのアルゴリズムも勉強したし、効果的に使ってみよう。