| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

差分

ナビゲーションに移動 検索に移動
64 バイト追加 、 2020年2月16日 (日) 04:32
編集の要約なし
==[[SJC-P]]==Sun Certified Programmer for [[Java ]] 2 Platform 5.0 Upgrade Exam
{{amazon|4822282775}}
[[Java5]].0でだいぶ機能追加があったけれど、丁寧に説明してくれてます。
{{amazon|482228168X}}
ただ、試験範囲から外れちゃったところも多いので、こちらの本もあわせて読んでおくとよいかも(もったいないか?)
http://suned.sun.co.jp/JPN/certification/progdetails.html
[[SJC-P チェックポイント]] | [[チェックポイント]] |
===宣言、初期化、スコープ===
====クラス(抽象クラス、およびあらゆる形式の'''ネストクラス'''を含む)、インタフェース、列挙型を宣言し、パッケージおよびインポート文(staticインポートを含む)を正しく使用しているコードを書く。====
====[[SJC-P インナークラス|インナークラス] [インナークラス]====[[SJC-P インナークラス]] | [[インナークラス]] | ====[[SJC-P クラス、インタフェース、列挙型を宣言|クラス、インタフェース、列挙型を宣言] [クラス、インタフェース、列挙型を宣言]====[[SJC-P クラス、インタフェース、列挙型を宣言]] | [[クラス、インタフェース、列挙型を宣言]] | ====[[SJC-P 静的インポート|静的インポート] [静的インポート]====[[SJC-P 静的インポート]] | [[静的インポート]] | ====[[SJC-P 型と変数|型と変数] [型と変数]====[[SJC-P 型と変数]] | [[型と変数]] | ====[[SJC-P 列挙型|列挙型] [列挙型]====[[SJC-P 列挙型]] | [[列挙型]] |
*プリミティブ型、配列型、'''列挙型'''、オブジェクトをstatic、インスタンス変数、ローカル変数として宣言、初期化、使用するコードを書く。変数名に正しい識別子を使用する。
====[[SJC-P 可変長引数|可変長引数] [可変長引数]====[[SJC-P 可変長引数|可変長引数]] | *staticメソッドとstaticでないメソッドの両方を宣言するコードを書く。この場合、[[可変長引数Java]] | *staticメソッドとstaticでないメソッドの両方を宣言するコードを書く。この場合、JavaBeansの命名規則に準拠したメソッド名を使用する。Beansの命名規則に準拠したメソッド名を使用する。'''可変長引数'''リストを宣言、使用するコードを作成する。====[[SJC-P 共変戻り値|共変戻り値] [共変戻り値]====[[SJC-P 共変戻り値]] | [[共変戻り値]] |
*与えられたコード例で、あるメソッドが別のメソッドを正しくオーバーライドまたはオーバーロードしているかを確認し、そのメソッドに対する正しい戻り値('''共変戻り値'''を含む)を識別する。
====[[SJC-P コンストラクタ]]====
*与えられたクラスおよびスーパークラスに対し、1つまたは複数のクラスに対するコンストラクタを作成する。与えられたクラスに対し、デフォルトコンストラクタが作成されるかどうかを判断し、作成される場合はそのコンストラクタのふるまいを特定する。与えられたネストまたはネストされていないクラスに対し、そのクラスをインスタンス化するコードを書く。
===フロー制御===
====[[SJC-P ]] 選択====[[SJC-P ]] 選択
*if文またはswitch文を実装するコードを書いて、それらの文に対して正しい式を識別する。
====[[SJC-P 繰返し]]====[[SJC-P 繰返し]]
*for、'''拡張forループ(for-each)'''、do、while、ラベル、break、continueなど、あらゆる型のループや反復子を実装するコードを書き、ループ実行中と実行後のループカウンタ変数の値を説明する。
====[[SJC-P 例外]]====[[SJC-P 例外]]
*例外と例外処理句(try、catch、finally)を使用し、例外をスローするメソッドおよびそのメソッドをオーバーライドするメソッドを宣言するコードを書く。
*次のいずれかがスローされる結果になる状況を認識できる。(ArrayIndexOutOfBoundsException、ClassCastException、 IllegalArgumentException、IllegalStateException、NullPointerException、 NumberFormatException、AssertionError、ExceptionInInitializerError、 StackOverflowError、NoClassDefFoundError)これらのうちのどれが仮想マシンでスローされるかを知っており、その他については、プログラムでスローすべき状況を認識できる。これらのうちのどれが仮想マシンでスローされるかを知っており、[[その他]]については、プログラムでスローすべき状況を認識できる。
===APIコンテンツ===
====[[SJC-P オートボクシング]]====[[SJC-P オートボクシング]]
*プリミティブラッパークラス(Boolean型、Character型、Double型、Integer型など)、 autoboxing/unboxingを使用するコードを書く。String、StringBuilder、StringBufferクラス間の違いを説明する。
====[[SJC-P ファイル操作]]====[[SJC-P ファイル操作]]====[[SJC-P 直列化]]====[[SJC-P 直列化]]*ファイルシステムのナビゲーション、ファイルの読み込み、ファイルの書き込みを含むシナリオが与えられたとき、java.ioパッケージのクラスのうち、BufferedReader、BufferedWriter、File、FileReader、FileWriter、PrintWriter ioパッケージのクラスのうち、Buffered[[R]]eader、BufferedWriter、File、File[[R]]eader、FileWriter、PrintWriter を使用して(組み合わせを含む)正しいソリューションを作成する。 java.ioパッケージのAPIのうち、DataInputStream、 DataOutputStream、FileInputStream、FileOutputStream、ObjectInputStream、 ObjectOutputStream、Serializableを使用してオブジェクトをシリアライズまたはデシリアライズするコードを書く。さらに、 transient変数およびprivate指定されたreadObjectメソッドとwriteObjectメソッドを宣言して使用する Serializableクラスを作成する。シナリオやコード例が与えられたとき、デシリアライズ中、オブジェクトの継承チェーンでコンストラクタが呼び出されるか、呼び出されるとするといつどのコンストラクタが呼び出されるかを知っている。====[[SJC-P 書式]]====[[SJC-P 書式]]====[[SJC-P 日付と数値]]====[[SJC-P 日付と数値]]
*java.textパッケージの標準J2SE APIを使用して、特定のロケール用の日付、数値、通貨の値の正しい書式化または解析を行う。与えられたシナリオで、デフォルトロケールまたは特定のロケールを使用する場合に適切なメソッドを特定する。java.util.Localeクラスの目的と用途を説明する。
====SJC-P ストリーム解析(Scanner)====
===並行性===
====[[SJC-P 並行性]]====[[SJC-P 並行性]]*java.lang.Threadとjava.lang.Runnableの両方を使用して新しいスレッドを定義、インスタンス化、開始するコードを書く。[[R]]unnableの両方を使用して新しいスレッドを定義、インスタンス化、開始するコードを書く。
*存在し得るスレッドの状態を認識し、スレッドの状態がどのように変化できるかを識別する。
===コレクション/ジェネリックス===
*与えられた設計シナリオで、その設計を正しく実装するにはどのコレクションクラス/インタフェースを使用するかを判断する。(Comparableインタフェースの使用を含む)
*Collections APIのうち、特に、Set<E>、List<E>、Queue<E>、Map<K,V>("<",">"は半角)インタフェースとその実装クラスのジェネリックスを使用するコードを書く。ジェネリックスを使用しないCollections APIの制限事項、およびジェネリックスを使用するためにコードをリファクタリングする方法を知っている。APIの制限事項、およびジェネリックスを使用するためにコードを[[リファクタリング]]する方法を知っている。====[[SJC-P ジェネリックス 多態性]]====[[SJC-P ジェネリックス 多態性]]====[[SJC-P ジェネリックス 型パラメータ]]====
*[http://www.ne.jp/asahi/hishidama/home/tech/java/generics.html 総称型(Generic type)]
[[SJC-P ジェネリックス 型パラメータ]]
*クラス/インタフェース宣言、インスタンス変数、メソッド引数、戻り値の型に型パラメータを正しく使用するコードを書き、ジェネリックスを使用したメソッドまたはワイルドカードの型を使用するメソッドを書いて、これらの2つのアプローチ間の類似点と相違点を説明する。
*java.utilパッケージの機能を使用して、リストのソート、バイナリ検索、リストから配列への変換など、リストの操作を行うコードを書く。リストと配列のソートにはjava.util.Comparatorとjava.lang.Comparableインタフェースを使用する。さらに、ソートに対するプリミティブラッパークラスとjava.lang.Stringの「自然順(natural ordering)」の効果を識別する。
===Java言語の基礎[[Java]]言語の基礎===
*与えられたコード例とシナリオで、正しいアクセス修飾子、パッケージ宣言、インポート文を使用して例のコードと相互作用する(アクセスを行う、または継承関係を持つ)コードを書く。
*JARファイルの内外にあるクラスの完全修飾名が与えられたとき、そのクラスの正しいディレクトリ構造を構成する。コード例とクラスパスが与えられたとき、そのクラスパスがコードのコンパイルに支障を来たすかどうかを判断する。JA[[R]]ファイルの内外にあるクラスの完全修飾名が与えられたとき、そのクラスの正しいディレクトリ構造を構成する。コード例とクラスパスが与えられたとき、そのクラスパスがコードのコンパイルに支障を来たすかどうかを判断する。
===その他参考[[その他]]参考=======[[Java アノテーション]]====
----
{{amazon|4822282775}}

案内メニュー