Java SE 11 Gold合格へ向けて

Java

Java SE11 Silverは2年前に取得していたのですが、Goldは黒本がなかったので受験を保留にしていました。しかし、11月に念願の黒本が発売されたので合格へ向けて試験勉強をします。

oracle公式のオラクル認定資格1Z0-816-JPNによると、試験内容チェックリストは以下の通りです。※が付いている項目はSE11から追加された内容です。

Javaの基礎
・finalクラスを作成および使用する
・内部クラス、ネストしたクラス、および無名クラスを作成および使用する
・列挙を作成および使用する

例外処理とアサーション
・try-with-resources構造を使用する
・カスタム例外クラスを作成および使用する
・アサーションを使用して不変量をテストする

Javaのインタフェース
・デフォルト・メソッドによってインタフェースを作成および使用する
・プライベート・メソッドによってインタフェースを作成および使用する※

汎用とコレクション
・ラッパー・クラス、オートボクシングおよびオート・アンボクシングを使用する
・ダイアモンド表記とワイルドカードを使用して汎用クラスおよびメソッドを作成および使用するコレクション・フレームワークについて説明する。
・主要なコレクション・インターフェースを使用する
・ComparatorインタフェースとComparableインタフェース
・コレクション用の便利なメソッドを作成および使用する

関数型インタフェースとラムダ式
・関数型インタフェースを定義および記述する
・ラムダ式の引数リストとLocal Variable Types※

JavaストリームAPI
・ストリーム・インタフェースとパイプラインについて説明する
・ラムダ式とメソッド参照を使用する

組込み関数型インタフェース
・java.util.functionパッケージのインタフェースを使用する
・Predicate、Consumer、Function、Supplierなどのコア関数型インタフェースを使用する
・java.util.functionパッケージのベース・インタフェースのバイナリ・バリエーションとプリミティブを使用する

ストリームに対するラムダ演算
・map、peekおよびflatMapメソッドを使用してストリーム・データを抽出する
・findFirst、findAny、anyMatch、allMatchおよびnoneMatchメソッドによる検索を使用してストリーム・データを検索する
・オプション・クラスを使用する
・ストリームに対するcount、max、min、averageおよびsum演算を使用して計算を実行する
・ラムダ式を使用してコレクションをソートする
・ストリームに対してCollectorsを使用する(groupingByおよびpartitioningBy演算を含む)

モジュール型アプリケーションに移行する
・移行用のモジュールにJava SE 8アプリケーションを分割して、SE 9~SE 11より前のバージョンのJavaを使用して開発したアプリケーションを移行する(トップダウン移行とボトムアップ移行を含む)※
・classpathとmodulepathに対してモジュール型アプリケーションを実行する※
・jdepsを使用して依存関係を調べ、循環的な依存関係に対処する方法を識別する※

モジュール型アプリケーションにおけるサービス
・ディレクティブなど、サービスのコンポーネントについて説明する。※
・サービス・タイプを設計する。ServiceLoaderを使用してサービスをロードする。※
・コンシューマ・モジュールとプロバイダ・モジュールが含まれているサービスの依存関係をチェックする※
・抽象クラスとインタフェースを比較する※

並列処理
・RunnableとCallableを使用してワーカー・スレッドを作成する。ExecutorServiceを使用してタスクを並列実行する
・CyclicBarrierやCopyOnWriteArrayListなど、java utilの並列コレクションおよびクラスを使用する
・スレッド・セーフなコードを記述する
・デッドロックやライブロックなど、スレッド化の問題を識別する

並列ストリーム
・並列ストリームを使用するコードを開発する
・ストリームで分解と縮小を実装する

I/O(基本およびNIO2)
・I/Oストリームを使用してコンソールおよびファイル・データに対するデータの読取りと書込みを行う
・I/Oストリームを使用してファイルの読取りと書込みを行う
・シリアライゼーションを使用してオブジェクトの読取りと書込みを行う
・Pathインタフェースを使用してファイルおよびディレクトリ・パスを操作する
・Filesクラスを使用してファイルまたはディレクトリのチェック、削除、コピー、移動を行う
・ファイルに対してストリームAPIを使用する

Java SE アプリケーションにおけるセキュア・コーディング
・JavaアプリケーションにおけるDoSの防止※
・Javaアプリケーションにおける機密情報の保護※
・データ整合性ガイドラインの実装(インジェクションおよびインクルードと入力検証)※
・アクセス可能性と拡張性の制限、適切な入力検証処理、および変更可能性によるコードの外部攻撃の防止※
・機密オブジェクトの構築の保護※
・シリアライゼーションとデシリアライゼーションの保護※

JDBCによるデータベース・アプリケーション
・JDBCのURLおよびDriverManagerを使用してデータベースに接続する
・PreparedStatementを使用してCRUD操作を実行する
・PreparedStatementおよびCallableStatement APIを使用してデータベース操作を実行する

ローカライズ
・Localeクラスを使用する
・リソース・バンドルを使用する
・Javaでメッセージ、日付および数値の形式を指定する

アノテーション
・アノテーションの目的と一般的な使用パターンについて説明する※
・アノテーションをクラスとメソッドに適用する※
・よく使用されるJDKのアノテーションについて説明する※
・カスタム・アノテーションを宣言する※

また、試験時間は180分(3時間)、 出題数は80問、合格ラインは63%となっています。つまり

80問中50.4≒51問正解していれば合格となります。合格ラインぎりぎりを狙うと間違いなく下回るので正答率80%、64問正解を目指して勉強します。

コメント

タイトルとURLをコピーしました