カットシステムの書籍のご案内

Javaのメカニズム
エラー・例外で困っているあなたに

著者 壬生 朗
判型 B5変型判、384頁
本体価格 3,400円
ISBN 978-4-87783-150-9

本書について

本書は、Java言語やJava仮想マシンの仕組みを解説します。本書を読むと、Java言語やJava仮想マシンの構成、振る舞い、メカニズムを理解し、さらにはJava言語仕様やJava仮想マシン仕様に込められたJava言語開発者の思い、設計ポリシーに触れることができます。

プログラム言語のような開発環境の仕組みを理解しているか否かで、その開発環境を使ったソフトウェア設計やプログラミングの質には大きな違いがでてきます。本書を理解し、得られた知識を実践に役立てることで、読者自身のソフトウェア設計やプログラミングは、大いなる優位性を発揮することでしょう。

本書は、「型」という切り口でJava言語を捉えています。Java言語は静的な型を持つといわれます。Java言語のこのような特徴は、しばしば見逃されがちですが、実は、Java言語の根幹に位置する重要な設計ポリシーの1つなのです。「型」を中心テーマとし、「型」に関連付けてJava言語やJava仮想マシンの仕組みと、そこに込められた設計ポリシーを広範囲に説明しています。

目 次

Chapter1 前提となる知識

1.1 Java言語の特徴とソフトウェアの指標
1.2 コンパイルと実行の2つのプロセス
1.3 Javaコンパイラの機能と振る舞い
1.4 Java仮想マシンの機能と振る舞い
1.5 Java仮想マシンのデータ領域
1.6 仕様と実装
1.7 IEEE 754規格

Chapter2 型の種類

2.1 Javaコンパイラによる型の決定
2.2 Java言語が提供する型
2.3 null型
2.4 型の名前とコンテキスト

Chapter3 プリミティブ型

3.1 プリミティブ型とプリミティブ値
3.2 整数型のサイズと内部表現形式
3.3 整数型の範囲
3.4 整数演算子の実行アルゴリズム
3.5 整数型のみ許される変数や式
3.6 整数演算子とオーバーフロー、アンダーフロー
3.7 整数除算演算子(/)と整数剰余演算子(%)
3.8 浮動小数点数型の標準的な内部表現形式
3.9 浮動小数点数型の非標準の内部表現形式
3.10 ゼロ、無限大、非数(NaN)
3.11 数値集合と包含関係
3.12 大小の比較、等価かどうかの判定
3.13 浮動小数点演算子と非数(NaN)
3.14 浮動小数点演算子の実行アルゴリズム
3.15 浮動小数点演算子とオーバーフロー、アンダーフロー
3.16 FP-strict式となる場合
3.17 FP-strict式と浮動小数点数型の内部表現形式
3.18 boolean型と論理量
3.19 boolean型の式以外を許していないコンテキスト
3.20 boolean型から他の型への変換

Chapter4 参照型

4.1 参照型に属する型
4.2 オブジェクトの種類
4.3 オブジェクトの記憶領域
4.4 オブジェクトの状態
4.5 参照値
4.6 複数の参照
4.7 クラスObjectと汎化・継承関係
4.8 Stringオブジェクトと不変オブジェクト
4.9 同じ参照型、同じ参照値

Chapter5 リテラルと型

5.1 リテラルの種類
5.2 整数リテラルの種類
5.3 特殊な10進整数リテラル
5.4 int型、long型の範囲に収まらない値
5.5 浮動小数点数リテラルの種類と型
5.6 浮動小数点リテラルの境界値
5.7 真偽リテラルの種類と型
5.8 文字リテラルの型
5.9 文字列リテラルの型とStringオブジェクト
5.10 nullリテラルの型とnull参照

Chapter6 変数と型

6.1 変数のライフサイクル
6.2 変数の初期化と値の変更
6.3 代入互換性のチェック
6.4 クラス変数のライフサイクル
6.5 インスタンス変数のライフサイクル
6.6 配列の構成要素のライフサイクル
6.7 メソッド・パラメータのライフサイクル
6.8 例外ハンドラ・パラメータのライフサイクル
6.9 ローカル変数のライフサイクル
6.10 final変数
6.11 変数の型とデフォルト値
6.12 オブジェクトとクラス
6.13 コンパイル時の型と実行時の型

Chapter7 演算子と型

7.1 数値比較演算子(< <= > >=)と型
7.2 等値演算子(== !=)と型
7.3 単項プラス演算子(+)、単項マイナス演算子(−)と型
7.4 乗除演算子(* / %)、加減演算子(+ −)と型
7.5 インクリメント演算子(++)、デクリメント演算子(−−)と型
7.6 シフト演算子(<< >> >>>)と型
7.7 ビットごとの補数演算子(~)と型
7.8 ビットごとの論理演算子(& | ^)と型
7.9 条件演算子(? :)と型
7.10 キャスト演算子と型
7.11 文字列連結演算子(+)と型
7.12 論理否定演算子(!)と型
7.13 条件And演算子(&&)、条件Or演算子(||)と型
7.14 フィールド・アクセス演算子(.)と型
7.15 instanceof演算子と型

Chapter8 Appendix

付録A 用語説明
付録B エラー情報まとめ
付録C 例外情報まとめ
付録D ユーティリティ・クラスUtils
付録E 参考文献

索引