はじめに
少し前、JavaSilver17に合格しましたので、合格体験記として記録を残そうと思います。
残そうと思った理由
JavaSilver17を取り巻く環境があまり良くないため
- JavaSilver17の日本語試験がリリースされたのは2023年12月1日で、出来立てほやほや
- 現状、紫本は出版されていますが黒本はまだ出版されていない(今年中という噂)
- ネットを探しても合格体験記等、有意義な情報源が少ない
勉強時間について
正確には計測していませんが、
- 11の黒本(10章まで)を1周
- 17の紫本を1周(模擬試験のみ1.5周ほど)
- 50-60時間程度
勉強スタイルは人それぞれだと思いますが、便利な黒本がまだないため周回を繰り返すより1問ずつ問題を振り返りながら確実に理解するやり方を意識しました。
また、問題の型が不明確なため、どのような初見の問題が出ても狼狽えないように、基礎知識を固めるイメージで取り組みました。
JavaSilver11から何が変わったのか
出題数と試験時間が変更
JavaSilver11の80問・180分からガラッと変更され、60問・90分となりました。
1問あたりにかけられる時間が2分15秒から1分30秒に変更されたので、出題コードや出題意図を素早く理解する必要があります。
モジュールシステム、ラムダ式とお別れ
モジュールシステムやラムダ式は試験範囲から外されました。11以降の新しい言語仕様をフィーチャーしています。
-
頻出する主な新しい言語仕様
- テキストブロック
- スイッチ関係(アロー構文(->)とスイッチ式)
- レコードクラス
- シールクラス
個人的に掘り下げが必要になった分野
- 新しい言語仕様(前述)
- javac、javaコマンド(-d、-cpオプション、パッケージ化)
- byte、short、intの扱える範囲(256、65536、4294967296)
- イミュータブル(Stringなど)
- static(インスタンス化との違い、呼び出し方の違い)
- 可変長引数(仮引数の指定方法・ルール、扱い方)
- 多次元配列(宣言の方法、アクセスの方法、for-eachロジック)
- var(宣言できる?できない?)
- インターフェース(多重継承、多重実装、デフォルト・staticメソッドなどの仕様、多重実装時のメソッド名衝突)
- ポリモーフィズム(キャストできる?できない?、メソッド呼べる?呼べない?)
- multi-catch(書き方、コンパイルエラーになる例)
その他受験時に助かる知識
出題コードが読みづらい
テストセンターでの受験において、画面のアスペクト比がおかしいです。
出題文が横に伸ばされているため読みづらいと思います。
ダミー問題がある
テスト前の注意書きにもありますが、テストの標準仕様として答えの存在しないダミー問題を出題することがあるようです。
1問あたりに割ける時間が少ないことからも、わからない問題は適当にマークして飛ばすことが大切です。
紫本の類題がほとんど
私が受験した際は、紫本で解いたことのある問題の類題が中心的な出題でした。11の黒本で補強するより17の紫本を確実に理解することの方が大切だと思います。