Javaチュートリアル 第4版
Javaチュートリアル 第4版 (The Java Series)
ピアソン・エデュケーション
著者:Sharon Zakhour、Isaac Rabinovitch、Thomas Risser、Jacob Royal、Scott Hommel、Mark Hoeber
訳者:安藤慶一
第1章 はじめてのJava
Javaテクノロジ現象
Javaテクノロジ
Javaテクノロジがもたらすもの
Javaテクノロジの効用
はじめてのJavaプログラミング
はじめの一歩(NetBeans IDE)
はじめの一歩(Microsoft Windows)
はじめの一歩(Solaris OS,Linux)
Hellow Worldプログラムを解剖する
ソースコードコメント
クラス定義
mainメソッド
エラーの説明
コンパイル時のエラー
実行時のエラー
設問と演習
第2章 オブジェクト指向プログラミングの概念
オブジェクトとは
クラスとは
継承とは
インタフェースとは
パッケージとは
設問と演習
第3章 Java プログラミング言語の基礎
変数
命名
基本データ型
配列
変数のまとめ
設問と演習:変数
演算子
代入,算術,単項
等値,関係,条件
ビット操作演算子とシフト演算子
演算子のまとめ
設問と演習:演算子
式,文,ブロック
式
文
ブロック
設問と演習:式,文,ブロック
フロー制御文
if文とif-else文
switch文
while文とdo-while文
for文
分岐文
フロー制御文のまとめ
設問と演習:フロー制御文
第4章 クラスとオブジェウト
クラス
クラスを宣言する
メンバー変数を宣言する
メソッドを定義する
クラスのコンストラクタを作る
メソッドやコンストラクタに情報を渡す
オブジェクト
オブジェクトを生成する
オブジェクトを使う
クラス詳説
メソッドから値を返す
キーワードthisを使う
クラスのメンバーへのアクセスを制御する
インスタンスメンバーとクラスメンバー
フィールドを初期化する
クラスとオブジェクトのまとめ
設問と演習:クラス
設問と演習:オブジェクト
入れ子のクラス
なぜ入れ子のクラスを使うのか
staticな入れ子のクラス
内部クラス
内部クラスの例
入れ子のクラスのまとめ
設問と演習:入れ子のクラス
列挙型
設問と演習:列挙型
注釈
ドキュメンテーション
コンパイラが使用する注釈
注釈の処理
設問と演習:注釈
第5章 インターフェイスと継承
インタフェース
Javaにおけるインタフェース
APIとしてのインタフェース
インタフェースと多重継承
インタフェースを定義する
インタフェースを実装する
インタフェースを型として使う
インタフェースを書き替える
インタフェースのまとめ
設問と演習:インタフェース
継承
Javaプラットフォームのクラス階層
継承の例
サブクラスでできること
スーパークラス中のprivateメンバー
オブジェクトのキャスト
メソッドのオーバーライドと隠蔽
フィールドの隠蔽
キーワードsuper
スーパークラスとしてのObject
finalクラスとfinalメソッド
抽象クラスと抽象メソッド
継承のまとめ
設問と演習:継承
第6章 総称
はじめに
非総称バージョンのクラス例
総称型
型パラメータのしきたり
総称メソッドと総称コンストラクタ
有界型パラメータ
サブタイプの落とし穴
ワイルガード
型消去
まとめ
設問と演習
第7章 パッケージ
パッケージの作成と利用
パッケージを作成する
パッケージに名前を付ける
パッケージメンバーを使用する
ソースファイルちクラスファイルの管理
まとめ
設問と演習
第8章 数と文字列
数
数値クラス
数のファーマット処理
基本算術を越えて
数のまとめ
設問と演習:数
文字
エスケープシーケンス
文字列
文字列の生成
文字列の長さ
文字列の連結
文字列のフォーマット処理
数と文字列との間の変換
文字列中の文字の操作
文字列の比較
StringBuilder
文字と文字列のまとめ
設問と演習:文字と文字列
第9章 例外
例外とは
キャッチもしくは明記の要件
例外の3つの種類
キャッチと明記の回避
例外のキャッチと処理
tryブロック
catchブロック
finalyブロック
全体を組み立てる
メソッドがスローする例外の明記
例外をスローする
throw文
Trowableとそのサブクラス
Error
Exception
例外チェーン
独自の例外クラスを作る
チェックされない例外をめぐる論争
例外の利点
まとめ
設問と演習
第10章 基本I/O
入出力ストリーム
バイトストリーム
文字ストリーム
バッファ付きストリーム
スキャン処理とフォーマット処理
コマンドラインからの入出力
データストリーム
オブジェクトストリーム
ファイル入出力
Fileオブジェクト
ランダムアクセスファイル
New I/Oパッケージ
まとめ
設問と演習
第11章 コレクション
概論
コレクションフレームワークとは
Java Collections Frameworkの利点
インタフェース
インタフェースColletion
インタフェースSet
インタフェースList
インタフェースQueue
インタフェースMap
オブジェクトの順序付け
インタフェースSortedSet
インタフェースSortedMap
インタフェースのまとめ
設問と演習:インタフェース
実装
Set
List
Map
Queue
ラッパー実装
ユーティリティ実装
実装のまとめ
設問と演習
アルゴリズム
ソート
シャッフル
日常的なデータ操作
サーチ
構成
最大値と最小値の検出
カスタムコレクション
独自実装を作成する理由
カスタム実装の作り方
相互運用性
互換性
API設計
第12章 並行処理
プロセスとスレッド
プロセス
スレッド
Threadオブジェクト
スレッドの定義と起動
sleepによる実行の休止
割り込み
join
2つのスレッドを使ったプログラム例
同期化
スレッド衝突
メモリ整合性エラー
synchronizedメソッド
同期化と組み込みロック
原子アクセス
活動性
デッドロック
スタベーションとライブロック
ガード付きブロック
変更不可オブジェクト
変更可能なクラス
変更不可オブジェクトを定義するための戦略
高レベルの並行処理オブジェクト
ロックオブジェクト
エグゼキュータ
並行コレクション
原子変数
参考文献
設問と演習
第13章 正規表現
はじめに
正規表現とは
パッケージjava.util.regexの構成
テスト用プログラムの紹介
文字列リテラル
メタキャラクタ
文字クラス
単純クラス
否定
範囲
結合
交差
減算
定義済み文字クラス
数量子
長さゼロのマッチ
キャプチャグループと文字クラスと数量子
最長一致と最短一致と強欲な数量子
キャプチャグループ
キャプチャグループの番号
後方参照
境界指定子
クラスPatternのメソッド
Patternオブジェクト生成時のフラグ指定
埋め込みフラグ表現
メソッドmatches
メソッドsplit
その他のユーティリティメソッド
java.lang.Stringのメソッド
クラスMatcherメソッド
インデックスメソッド
調査メソッド
置換メソッド
メソッドstartおよびendの利用例
メソッドmatchesおよびlookingAtの利用例
メソッドreplaceFirstおよびreplaceAllの利用例
メソッドappendReplacementおよぶappendTailの利用例
java.lang.Stringのメソッド
クラスPatternSyntaxExceptionのメソッド
まとめ
参考文献
設問と演習
第14章 プラットフォーム環境
設定ユーティリティ
プロパティ
コマンドライン引数
環境変数
その他の設定ユーティリティ
システムユーティリティ
コマンドライン入出力オブジェクト
システムプロパティ
セキュリティマネージャ
クラスSystemのその他のメソッド
PATHとCLASSPATH
PATHの更新(Windows)
PATHの更新(SolarisまたはLinux)
CLASSPATHのチェック(すべてのプラットフォーム)
設問と演習
第15章 Swing
Swingパッケージ概説
Swingとは
Swingのデモ
Swingの機能
Swingコンポーネント
プラガブルLook&Feel
ドラッグ&ドロップとデータ転送
国際化とローカライズ
アクセシビリティ
デスクトップとの結合
システムトレイのサポート
設問と演習
第16章 JARファイル
JARファイルの使い方
JARファイルの作成
JARファイルの内容の表示
JARファイルの内容の抽出
JARファイルの更新
JAR中のプログラムの実行
マニフェストファイル
デフォルトのマニフェスト
マニフェストファイルの更新
アプリケーションのエントリポイントを設定する
JARファイルのクラスパスにクラスを追加する
バージョン情報を設定する
JARファイル中にパッケージをシールする
JARファイルの署名と検証
署名と検証
JARファイルに署名する
署名付きJARファイルを検証する
JAR関連のAPI
サンプルアプリケーション:JarRunner
クラス JarClassLoader
クラス JarRunner
設問と演習
第17章 Java Web Start
Java Web Startアプリケーションの実行
ブラウザからの実行
Javaキャッシュビューアからの実行
デスクトップからの実行
Java Web Startアプリケーションの配備
Webサーバをセットアップする
JNLPファイルを作成する
アプリケーションをWebサーバに配置する
Webページを作成する
Java Web Startアプリケーションの開発
アプリケーションをJARファイルにまとめる
JARファイル中のリソースを読み込む
信頼されていないアプリケーション
JNLP API
Java Web Startとセキュリティ
Java Web Startアプリケーションの基本セキュリティ
Java Web Startと署名付きJARファイル
JNLPファイルとセキュリティ
HTTPS証明書の動的ダウンロード
Java Web Start関連のよくある問題
設問と演習
第18章 アプレット
はじめてのアプレット
AppletまたはJAppletを拡張する
アプレットのライフサイクル
マイルストンのメソッド
描画とイベント処理のためのメソッド
UIコンポーネントを追加するためのメソッド
アプレットにできることとできないこと
アプレットのAPIを活用する
データフィルの検出とロード
短いステータス文字列を表示する
ブラス座に文書を表示させる
他のアプレットにメッセージを送る
サウンドの再生
アプレットパラメータの定義と利用
APPLETタグを使う
アプレット作成時の留意事項
セキュリティ上の制約
ユーザーインタフェースの作成
システムプロパティを取得する
アプレットにおけるスレッド
サーバーサイドアプリケーションとの連携
アプレットを仕上げる
アプレットを公開する前に
高度に完成されたアプレット
アプレットの配備
一般的考慮事項
APPLETタグ
OBJECTタグ
EMBEDタグ
ブラウザが混在する環境での配備
アプレットによくある問題
設問と演習
付録A Java 言語におけるキーワード
付録B Java 認定試験との対応関係
付録C 設問と演習の解答
付録D 訳語対照表
索引