プログラミング言語Java (2)

前回から相当あいてしまいましたが、Java本2回目です。内容的にはenumリテラル・変数、型、演算子、制御文という感じです。この部分のメインは「型」のところですね。


プログラミング言語Java 第4版 (The Java Series)

プログラミング言語Java 第4版 (The Java Series)
ケン・アーノルド (著)
ジェームズ ゴスリン (翻訳)
デビッド ホームズ (著)
柴田 芳樹 (著)
¥ 4,410 (税込)


タイプセーフenum

まずは列挙型enumです。ここはJava5.0から変更のあった部分です。詳しいいきさつは知らない野ですが、たぶん「Effective Java プログラミング言語ガイド」で指摘されたため、それに合わせて変更したのではないかと思います。そのため、内容的にはまさしくタイプセーフenumになっています。

公式にサポートされたことにより、クラスを使って作っているもののような"無理やり"感がなくなっていますね。何となく「列挙型」としてのユーザが純粋に考えた時の形にずいぶん近くなったのではないかと思います。

基本データ型

プリミティブなデータとクラスを両立するためにできた、基本データ型の部分です。個人的にはこの部分がJavaの中で何となく奇妙だなと思う部分です。

ボクシング変換のおかげで、基本的にはあまり気にしないでもプログラムを書けてしまうのですが、だからこそ落とし穴になりやすい部分でもあります(たとえばNanの扱いとか)。意外に大事な部分がさらっと書かれているので注意がひつようです。

基本部分

それ以外の部分は、変数と式と制御文なので、Javaに限らずに基本的なところですね。Java的にはfor文の部分の拡張for文が新しい部分ではあります。他の言語ではforeach文としておなじみのやつです。JavaではIteratorを使ったイディオムはあったのですが、公式にforeach的な書き方ができるようになりました。

NEXT

次はジェネリック、例外、文字列、スレッド、アノテーションとかなり濃い部分です。ここら辺はかなりあやふやなところなので、しっかり見ていかないと。