IT資格無料解き放題

練習問題

Java Silver SE17 練習問題

Oracle Certified Java Programmer, Silver SE 17(1Z0-825-JPN)

Oracle の Java プログラマ認定のうち、SE 17 版の Silver に当たる試験です。ここではコードを読んで答える練習問題を、全問解説つきで無料公開しています。

収録している問題50
Java Silver SE17 を通しで解く1問目から順に見る

登録画面はありません

この資格の問題は に最終確認しました

コードを読んで答える練習問題50問を、全問解説つきで無料公開しています。正解はすべて実際にコンパイル・実行して確認しています。

01

試験の基礎データ

受験料
48,593円(税込)
収録問題数
50 問(すべて解説つき・無料)
出題形式
単一選択 49複数選択 1

「収録問題数」「出題形式」は当サイトの収録内容です。それより上の行は、試験を実施する 団体が公表している内容だけを載せています。

02

どんな問題が出ますか

Java Silver SE17 · 例題 1

このソースファイルをコンパイルしたときの結果はどれか。

 1: public class Clockface {
 2:     public static void main(String[] args) {
 3:         System.out.println("bracket form");
 4:     }
 5: 
 6:     public static void main(String... args) {
 7:         System.out.println("dots form");
 8:     }
 9: }
1コンパイルは成功し、起動すると bracket form が出力される
2行6 で、String... と String[] の main を両方は宣言できないというエラーになる✓ 正解
3コンパイルは成功するが、起動時にどちらの main を使うか決められない旨のエラーになる
4コンパイルは成功し、起動すると dots form が出力される
解説可変長引数の String... args は、引数の並びとしては String[] args と同じものになる。つまり行2 と行6 は名前も引数の並びも同じメソッドで、別々のメソッドとして共存できない。実際に javac にかけると行6 で「cannot declare both main(String...) and main(String[])」となり、コンパイルが止まる。起動対象の main は String[] でも String... でもどちらか一方であればよいが、『どちらでもよい』ことと『両方書ける』ことは別である。
Java Silver SE17 · 例題 2

このプログラムをコンパイルして実行した結果はどれか。

 1: public class Total {
 2:     static int sumOf(int... nums) {
 3:         int acc = 0;
 4:         for (int v : nums) {
 5:             acc += v;
 6:         }
 7:         return acc + nums.length;
 8:     }
 9: 
10:     public static void main(String[] args) {
11:         System.out.println(sumOf() + "," + sumOf(3, 8));
12:     }
13: }
1行11 で 0,11 と表示される
2行11 の sumOf() でコンパイルエラーになる
3行11 で NullPointerException がスローされる
4行11 で 0,13 と表示される✓ 正解
解説可変長引数は引数を1つも渡さなくても呼べて、そのときは長さ0 の配列が渡される(null ではない)。したがって sumOf() は合計0 に長さ0 を足して 0 になる。sumOf(3, 8) は合計11 に長さ2 を足して 13 になる。実行すると 0,13 と表示される。渡さなかったときに null が来ると考えると NullPointerException を選んでしまう。
Java Silver SE17 · 例題 3

このプログラムを java Announcer として実行したときに成り立つ記述はどれか。(2つ選択)

 1: public class Announcer {
 2:     public static void main(String[] args) {
 3:         char[] mark = {'C', 'o', 'd', 'e'};
 4:         System.out.println(mark);
 5:         System.out.println("[" + mark.length + "]");
 6:         main(6);
 7:     }
 8:     static void main(int n) {
 9:         var msg = "n=" + n;
10:         System.out.println(msg);
11:     }
12: }

複数選択(2つ選ぶ問題です)

1行4 では char 配列を受け取る println が選ばれ、Code と出力される✓ 正解
2行4 では Object を受け取る println が選ばれ、配列のハッシュ表記が出力される
3行8 の main が宣言されているため、起動対象の main が一意に決まらずコンパイルエラーになる
4行8 の main は起動の対象にならないが、行6 からは普通のメソッドとして呼び出される✓ 正解
5行6 は main を再び呼び出す形になるため、実行時に起動用の main を見つけられない旨のエラーになる
解説println には char[] を受け取る版があり、行4 ではそれが選ばれて配列の中身が文字として並び、Code と出力される(Object 版が選ばれてハッシュ表記になるのは char[] 以外の配列)。行8 の main(int) は名前が同じでも引数の並びが違う別のメソッドで、起動対象になるのは String[] を受け取る行2 の方だけである。起動対象にならないだけで普通のメソッドとしては呼べるので、行6 の main(6) は成立し n=6 が出力される。実行すると Code / [4] / n=6 の3行になる。

全問に、この形式の解説がつきます。

03

問題の目次

収録している 50 問を、番号で引ける一覧にしてあります。 ── Java Silver SE17 の問題一覧へ →

04

問題も、教科書も、模試も

問題420問も、教科書も、模試も、これ一冊。2,980円。

無料の問題集で学ぶ場合も、教科書は別に買うことになります。市販の対策本は、教科書が4,620円、問題集が3,7404,730円でした(2026-08-27 に Amazon で調べた価格です)。資格道場のこの一冊には、読むためのテキストが3種類そのまま入っています。

問題
420 問(択一 399 問 / 複数選択 21 問)
テキスト
3 種類(学習用テキスト・暗記用ノート・頻出度別ノート/PDF・スマホ版とPC版)
模試
7 回(1回 60 問・第1回は無料)
価格
2,980 円(税込・買い切り)

問題数・テキストの種類・模試の回数・価格は、資格道場の実物から取った数字です(2026-08 時点)。試験そのものの仕様ではありません。

05

資格道場の50問も、登録せずに

資格道場の収録問題から50問。
登録もログインもなしで解けます。

デモ用に作った問題ではありません。収録している420問から、そのまま50問を取り出したものです。50問とも、コードを読んで結果を答える形式で、コードは問題文にそのまま載ります。

資格道場50問解く

このサイトの50問は上の練習問題です。資格道場の50問は、コードも解説も資格道場の実物です

06

厚いところと、薄いところ

「継承とインタフェースの使用」は105問、「Javaの概要と簡単なJavaプログラムの作成」は42問。

Oracle が公表している試験内容チェックリストの細目に合わせて、細目の多い主題ほど問題を厚くしてあります。この配分は資格道場が決めたもので、Oracle 公式の出題比率ではありません。

主題・細目ごとの収録数を見る
主題・細目収録
1. Javaの概要と簡単なJavaプログラムの作成42
1.1mainメソッドを持つ実行可能なJavaプログラムの作成14
1.2コマンドラインでのJavaプログラムのコンパイルと実行14
1.3パッケージの使用(パッケージ宣言とインポート)14
2. Javaの基本データ型と文字列の操作63
2.1変数の宣言および初期化と変数のスコープ14
2.2ローカル変数型推論(var)7
2.3文字列の作成と操作(テキスト・ブロックを含む)14
2.4配列(一次元配列、二次元配列)の宣言・インスタンス化・初期化・使用14
2.5ArrayListの使用14
3. 演算子と制御構造56
3.1分岐文(if、if/else、switch)の使用14
3.2繰り返し文(do/while、while、for文および拡張for文)の使用14
3.3break、continueを使用した制御14
3.4switch式の使用14
4. クラスの定義とインスタンスの使用91
4.1Javaクラスの定義とインスタンス化とオブジェクトのライフサイクル14
4.2メソッドとコンストラクタの作成14
4.3メソッドのオーバーロード7
4.4static変数とstaticメソッド14
4.5アクセス修飾子の使用14
4.6instanceofのパターン・マッチング14
4.7レコード・クラスの作成と使用14
5. 継承とインタフェースの使用105
5.1スーパークラスとサブクラスの作成と使用14
5.2抽象クラスの作成と継承14
5.3メソッドのオーバーライド14
5.4参照型のキャストとポリモーフィックなメソッド呼び出し14
5.5finalクラスの作成と使用7
5.6インタフェースの作成と実装14
5.7デフォルト・メソッドとプライベート・メソッドの使用14
5.8シール・クラスの作成と使用14
6. 例外処理63
6.1例外処理の仕組みとチェック例外、非チェック例外、エラーの違い14
6.2try-catch文による例外処理14
6.3try-with-resources文による例外処理14
6.4カスタム例外の作成14
6.5multi-catch句の使用7
合計420

主題名・細目名はOracle 公式 Java SE 17 Programmer I(1Z0-825-JPN)の試験内容チェックリストの文言です(出典)。細目の番号は資格道場の付番で、「収録」は資格道場が収録している問題数の実測です。

資格道場画面Java Silver SE17 / 模試

資格道場には、本番形式で
通して解く模試があります。

全問が「回」に分けてあって、制限時間つきで通して解けます。途中に正誤は出ず、提出後にまとめて採点されます。第1回は無料の会員登録で解けます。

図 ── 模試の解答画面(本番形式)

資格道場の模試の解答画面。上に「模試・本番形式」と残り時間、その下に第1問から全50問までの問題一覧、さらに下に設問と選択肢が並んでいる。
  • 01残り時間 ── 画面の上に「模試・本番形式」と残り時間が出る
  • 02問題一覧 ── 第1問から全50問まで、番号を押して行き来できる
  • 03設問と選択肢 ── 1問ずつ選んで「次へ」で進む。「あとで見直す」も付けられる

画面資格道場の実物です(2026-08 時点。例は AZ-900 の模試です)。

資格道場模試を受ける

このサイトに模試(制限時間つきの通し演習)はありません

07

関連解説

この試験そのものの解説(勉強法・出題範囲・日程)は、姉妹サイトの資格道場にあります。

08

プログラミング言語 の他の資格

Java BronzeJava の入門50Java SilverJava の実務基礎試験情報Java GoldJava の上位試験情報HTML5 プロフェッショナル Lv1Web フロントエンドの基礎試験情報HTML5 プロフェッショナル Lv2JavaScript と API試験情報Python3 エンジニア認定基礎Python の文法基礎試験情報Python3 データ分析NumPy・pandas・可視化試験情報Python3 データ分析実践実務寄りのデータ分析試験情報PHP8 初級PHP の基礎試験情報PHP8 上級/準上級PHP の応用試験情報Ruby SilverRuby の基礎試験情報Ruby GoldRuby の応用試験情報

数はここで、仕上げは道場で。ここで数をこなしたら、道場へ。