オラクル認定資格教科書 Javaプログラマ Silver SE 8
【オラクル認定Java資格 Silverレベルのおすすめ参考書・テキスト(独学勉強法/対策)】も確認する
はじめに
本書は、日本オラクル株式会社が実施している『Oracle Certified Java Programmer, Silver SE 8」(以下、Silver 試 験)の試験対策用書籍です。
2014年3月にJava SE 8がリリースされてから、同バージョンに対応した認定資格が待ち望まれていましたが、2015年7月にSilver試験がリリースされました。本試験はJava言語の基本文法から、オブジェクト指向プログラミング(クラスインタフェース・例外処理など)が出題されます。試験範囲はBronze試験と多く重複しますが、細かな仕様や、SE 8の新機能である「ラムダ式」と「Date and Time API」に ついても問われます。
なお、「ラムダ式」と「Date and Time API」の仕様は広 範囲にわたりますが、Silver 試験で出題されるのはごく一部です。しかし、特にラムダ式は、今後のJavaアプリケーション開発で多用されるため、旧バージョンからJava言語を使用している方も、ぜひこの機会に仕様書をひととおりチェックし、習得頂きたいと思います。
また、本書は、基本的には各章ごとに項目が独立していますが、関連のある項目は詳細がどこに記載されているかを明示しているので、途中で知らないことが出てきても、再度読み直して理解を深めていただきたいと思います。
近年の開発現場では、様々なソフトウェアやツールを使用しコーディングを行うため、言語仕様を深く理解しなくてもコードが書けます。しかし、そのことにより潜在的なバグを埋め込んでしまう危険があります。
原理原則をしっかりと理解し知識を積み上げていくことで、バグの少ない、そして無駄のないソースコードを記述することができると思います。
本書を通じて、試験合格だけでなくJava言語のスキルを高める手助けになることを願っております。
最後に本書の出版にあたり、ナレッジデザインの各メンバにはたくさんの応援と技術サポートを頂きました。大竹龍史さん、市来秀男さん、和田佳子さん、心より感謝しております。また、株式会社翔泳社の野口亜由子様をはじめ、編集の皆様にこの場をお借りして御礼申し上げます。
2016年1月
山本道子
Java SE 8 認定資格の概要
Java SE 8 認定資格は、日本オラクルが実施しているJava プログラマ向けの資格です。Java によるオブジェクト指向プログラミングや、ファイルI/O などのコアAPI を使用した Java アプリケーション作成のスキルを証明します。
Java SE 8 は2012年 にスタートしたJava SE 7 認定資格からBronze、Silver、 Gold の3 レベルが設けられ、2015 年からJava SE 7 認定資 格と並行する形でJava SE 8 認定資格が開始されています。
本書の使い方
本書では、Java SE 8 Silver(試験番号:1Z0-808) 試験 の出題範囲に定められたすべてのトピックを解説の対象とし ています。
本書の構成
・第1章~第8章
第1章~第8章では、出題範囲にもとづいて解説を行っています。各章には本文やサンプルコード、実行結果、図表の要素があります。
・模擬試験
実際の試験を分析し、作成した模擬試験が1 回分掲載され ています。問題の後には詳しい解説もありますので、受験前 の総仕上げとしてご活用ください。
・試験直前チェックシート
試験に関する重要なポイントを抜粋して掲載してありま す。受験前に、自信のないところや再度確認しておきたい項 目を重点的にチェックしましょう。なお、ミシン目がついて いるので切り離して持ち歩くことができます。
表記について
・キーワードや重要事項は太字で示しています。
・メソッドは基本的に「メソッド名)」という形式で表します。メソッドは引数を取る場合もあれば、取らない 場合もあります。
・構文の表記における山かっこ(<>)内の語は、構成要素のユーザ指定部分を示します。プログラムやコマン ド、パスなどで実際に使用したり記載したりする場合、この部分の値を適切に指定する必要があります。
・実際のソースコードでは改行していないが、紙面の都合で折り返している箇所は「→」で表しています。
目次
試験の概要
本書の使い方
第1章 Javaプログラミング基礎
・Java テクノロジーの概要
・Java 環境のセットアップ
Java 環境とは
JDK のインストール
Path 環境変数の設定
・Java プログラムのコンパイルと実行
プログラム実行までの流れ
ソースファイルとクラスファイル
クラスの実行
コメント
・リテラル
リテラルの種類
_(アンダースコア)がある数値リテラル
・変数や定数の宣言と初期化
変数
データ型
変数宣言と代入
符号つき整数と浮動小数点数のデフォルトの型
定数
文字列は参照型
・変数のスコープ
練習問題
解答・解説
第2章 配列
・1次元配列
配列とは
配列の作成
添え字(インデックス)
・多次元配列
・java.util.ArrayList クラス
配列とArrayList クラスの違い
java.util.ArrayList クラスの利用
心に指定可能なデータ型
ジェネリックスを使用しないコード
ダイヤモンド演算子の利用
・コマンドライン引数の利用
練習問題
解答・解説
第3章 演算子と分岐文
・演算子と演算子の優先順位
演算子とは
算術演算子と単項演算子
代入演算子と複合代入演算子
関係演算子
論理演算子
・文字列の扱い(String クラスとStringBuilder クラ ス)
String クラス
StringBuilder クラス
・データの比較
基本データ型の比較
参照型の比較
文字列の比較
String とStringBuilder での注意点
null 比較
・if 文・if-else文
制御文とは
条件文とは if文
if-else文
else if
条件演算子
if 文のネスト
・switch
練習問題
解答・解説
第4章 繰り返し文と繰り返し制御文
・while
繰り返し文とは
while
・do-while文
do-while文
・for文と拡張for文
for文
拡張for文
・制御文のネスト
・繰り返し制御文
繰り返し制御文とは
break
continue
ラベル
練習問題
解答・解説
第5章 クラス定義とオブジェクトの生成・使用
・クラスとオブジェクト
クラスとは
オブジェクトとは
クラスの定義
変数の宣言
メソッドの定義
インスタンス化
インスタンス変数およびメソッドの呼び出し
変数のスコープ
・コンストラクタ
コンストラクタの定義
コンストラクタの呼び出し
デフォルトコンストラクタ
・オーバーロード
オーバーロードとは
コンストラクタのオーバーロード
・static 変数とstaticメソッド
static 変数とは・staticメソッドとは
static 変数とstatic メソッドの呼び出し
インスタンスメンバとstaticメンバのクラス内でのアクセス
static イニシャライザ
・アクセス修飾子とカプセル化
アクセス修飾子
カプセル化
・値コピーと参照情報コピー
引数・戻り値における基本データ型と参照型の違い
・ガベージコレクタ
ガベージコレクタとは
オブジェクトをガベージコレクタの対象にする
finalize()メソッドの定義
・パッケージ宣言とインポート
パッケージ
パッケージ化
パッケージ化されたクラスのコンパイルと実行
import
利用される側のクラスに関する注意
Java 言語が提供する主なパッケージ
練習問題
解答・解説
第6章 継承とポリモフィズム
・継承
継承関係のあるクラスの定義
java.lang.Object クラス
・オーバーライド
オーバーライドとは
final 修飾子
・thisとsuperの利用
this
super
・抽象クラス
抽象クラスとは
抽象クラスの継承クラス
・インタフェース
インタフェースとは
インタフェースでの定数
インタフェースでのメソッド
インタフェースの実装クラス
インタフェースの継承
・基本データ型の型変換
基本データ型の型変換ルール
基本データ型の暗黙型変換
キャストを使用した基本データ型の型変換
基本データ型の型変換での注意
・参照型の型変換
参照型の型変換ルール
参照型の暗黙型変換
キャストを使用した参照型の型変換
参照型の型変換での注意
instanceof 演算子
オーバーロード時での注意
・ポリモフィズム
練習問題
解答・解説
第7章 Java APIの利用
・java.lang.Object クラス
Object クラスのメソッド
Object クラスのequals() メソッド
Object クラスのtoString()メソッド
Math クラスのメソッド
配列に関連するメソッド
・Date and Time API の基本
Date and Time API とは
各オブジェクト生成のためのメソッド
Date Time Formatter FUN
日付/時間の加減算
・コレクションとラムダ式の基本
関数型インターフェース
ラムダ式
コレクションAPI の利用
練習問題
解答・解説
第8章 例外処理
・例外と例外処理
例外とは
例外処理
・例外クラス
checked例外とunchecked例外
主な例外クラス
独自例外クラスの定義
・try-catch-finally
try-catch-finally ブロック
複数のcatch ブロック定義
・throws throw
throws
ライブラリ利用時の注意
throw
・オーバーライドの注意点
練習問題
解答・解説
模擬試験
・模擬試験
解答・解説
索引