au PAY マーケット

Java (Bronze SE 7/8) 資格試験 Exercise25

Java (Bronze SE 7/8) 資格試験 Exercise25

練習問題1
1 class Nest {
2  public static void main(String[ ] args) {
3   int num[ ][ ] = {{0, 1, 2}, {3, 4, 5}, {6, 7, 8}};
4   int i = 0;
5   label:
6   while(true) {
7    int j = 0;
8    while(j < 3) {
9     System.out.println(num[i][j]);
10     j++;
11     if(i == 1) break label;
12    }
13    i++;
14   }
15  }
16 }

01上記のコードを確認してください。
このコードをコンパイル、および実行すると、どのような結果になりますか。1つ選択してください。 A. 01
B. 012
C. 0123
D. 実行時に例外が発生する
E. コンパイルエラーが発生する

(答え):C

(解説):while文のネストについての問題です。
●各選択肢の解説は、以下の通りです。

6行目と8行目でwhileの二重ループとなっています。
6行目の外側のループは、条件式にtrueを指定しているため、無限ループになります。
変数iが0のとき、8行目の内側のループでは条件がj < 3のため、変数jが0から2までループ処理を実行します。
9行目のnum[i][j]を出力する文は、num[0][0]、num[0][1]、num[0][2]、つまり「012」と順番に出力されます。
その後、内側のループが終了し、13行目のi++で変数iがインクリメントされ、0から1に変わります。
再び、8行目以降のループに制御が移り、num[1][0]の「3」が出力されます。
その後、11行目のi==1という条件に該当し、break label;を実行します。
11行目のbreak文によって、5行目でlabel:を指定している5~14行目のループが終了します。
したがって、実行結果は「0123」と出力されるため、選択肢Cが正解です。


練習問題2
1 class Nest {
2  public static void main(String[ ] args) {
3   for(int i = 0; i < 3; i++) {
4    for(int j = 0; j < i; j++) {
5     System.out.println(‘*’);
6    }
7    System.out.println(‘/’);
8   }
9  }
10 }

02上記のコードを確認してください。
このコードをコンパイル、および実行すると、どのような結果になりますか。1つ選択してください。 A. */**/
B. /*/**/
C. **/**/**/
D. /**/**/**/
E. 何も出力されない

(答え):B

(解説):for文のネストについての問題です。
●各選択肢の解説は、以下の通りです。

変数iが0ときは、4~6行目のループの条件には該当せず、7行目で「/」を出力し、3行目のfor文で変数iが1にインクリメントされます。
変数iが1のとき、変数jが0となり、4~6行目のforループを一回処理し、5行目で「*」を出力します。
その後、再び7行目で「/」を出力し、3行目のfor文で変数iが2にインクリメントされます。
変数iが2のときは、変数jが0~1まで変化するため、4~6行目のforループを二回処理し、「*」を二回出力します。
その後、再び7行目で「/」を出力し、3行目の条件式がfalseになるためプログラムを終了します。
したがって、実行結果は「/*/**/」と出力されるため、選択肢Bが正解です。


練習問題3

03具象クラスと抽象クラスについての説明として、適切なものはどれですか。二つ選択してください。
A. 具象クラスにはabstractメソッドを定義できる
B. 抽象クラスに実装を持つメソッドを定義できる
C. 具象クラスはインスタンス化できる
D. 抽象クラスはインスタンス化できる

(答え):B、C

(解説):クラス定義についての問題です。
●解説は以下の通りです。

  具象クラスとは、具体的な内容を持つクラスを表します。具象クラスに定義されているすべてのメソッドは実装を持ちます。具象クラスはインスタンス化できます。

抽象クラスとは、抽象的なクラスを表します。抽象クラスは、抽象メソッドを定義することが可能です。抽象クラスとは、実装を持たないメソッドです。

また、抽象メソッドは実装を持つメソッドを定義することも可能です。

abstract修飾子は、クラスの修飾子として指定すると抽象クラスの定義となり、メソッドの修飾子として指定すると抽象メソッドの定義となります。

したがって、選択肢B、Cが正解です。




 具象クラスとは、具体的な内容を持つクラスを表します。具象クラスに定義されているすべてのメソッドは実装を持ちます。具象クラスはインスタンス化できます。
 抽象クラスとは、抽象的なクラスを表します。抽象クラスは、抽象メソッドを定義することが可能です。抽象クラスとは、実装を持たないメソッドです。
 抽象クラスの特徴は、以下の通りです。
 ●抽象クラスは、インスタンス化できない
 ●抽象クラスのサブクラスでは抽象メソッドの実装を定義する必要がある
 ●抽象クラスには抽象メソッド以外に、実装を持つメソッドを定義することも可能
 



恭喜你今天又向前迈进了一小步,明天继续加油哦!

如果你觉得这个网站对学习有帮助,希望你也能分享给身边的好友!

前の記事

我爱背单词#0035

次の記事

例文-Lesson82
ショップチャンネル