|
||||||||||||||||||||||||||||||
| 前のページ 1 2 | ||||||||||||||||||||||||||||||
| 解答 | ||||||||||||||||||||||||||||||
|
1ページ目の問題の解答を掲載します。解答には、問題の正解やその理由だけでなく、用語や重要事項などが詳しく解説されています。 |
||||||||||||||||||||||||||||||
| 第1問の解答: A | ||||||||||||||||||||||||||||||
|
java.lang.Mathクラスには数値処理をするためのさまざまなメソッドが用意されています。各選択肢に関する説明は以下のとおりです。 |
||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||
|
したがって、Aが正解です。なお、floorメソッドの戻り値はdouble型であるため、int型にキャストしています。 |
||||||||||||||||||||||||||||||
| 第2問の解答: B、D | ||||||||||||||||||||||||||||||
|
java.lang.Mathクラスの宣言は以下のとおりです。 |
||||||||||||||||||||||||||||||
public final class Math extends Object
|
||||||||||||||||||||||||||||||
|
Mathクラスはfinalクラスなので、拡張することはできません(A)。abstractクラスではありませんが、コンストラクタが公開されていない(publicではない)のでインスタンスを作成することはできません(C)。しかし、すべてのフィールド、メソッドはstaticで宣言されているため(B)、インスタンスを作成しなくても利用することができます。 minメソッドは、2つの引数を取り、小さいほうの値を返すメソッドです。引数の型は、int、long、float、doubleを指定できるようにオーバーロードされています(D)。modメソッドというのは、Mathクラスには未定義です。剰余計算には%演算子を利用します(E)。 したがって、A、C、Eは誤りで、BとDが正解となります。 |
||||||||||||||||||||||||||||||
| 第3問の解答: G | ||||||||||||||||||||||||||||||
|
まず、05行目の「a = a + 100 + 200」では、+演算子による文字列の連結が左から実行されるので、a + 300と解釈されないことに注意してください。 03行目から06行目までのStringオブジェクトa、bの参照については次の図のようになります。 |
||||||||||||||||||||||||||||||
| 03、04行目の終了時 | ||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||
| 05行目の終了時 | ||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||
| 06行目の終了時 | ||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||
|
したがって、07行目でaを表示すると「ABC100200ABC」が表示されるため、Gが正解です。 |
||||||||||||||||||||||||||||||
| 第4問の解答: D | ||||||||||||||||||||||||||||||
|
StringBufferオブジェクトはStringオブジェクトと違い、可変長文字列を管理します。Stringオブジェクトでは、文字列を変更するたびに新たにオブジェクトが再作成されるのに対し、StringBufferオブジェクトは、appendメソッド、insertメソッドを利用することで、オブジェクトの再作成は行われず、文字列のみを追加することが可能です。 03、04行目の終了時、sb1とsb2は同じオブジェクトを参照します。05行目でsb1.append("XYZ")を実行した場合もオブジェクトは元のままなので、sb1、sb2ともに同じ文字列を格納したStringBufferオブジェクトを参照します。さらに、06行目でsb1.append(sb2)を実行すると、sb2に格納された"ABCXYZ"がsb1に格納された"ABCXYZ"という文字列に追加されます。07行目では暗黙的にStringBufferオブジェクトのtoStringメソッドが呼ばれ、格納された文字列が取得され、標準出力に出力します。したがって、Dが正解です。 07行目でsb2を表示するように変更した場合、sb1とsb2は同じオブジェクトを参照していますので、同じ結果となります。 |
||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||
|
前のページ 1 2 |
||||||||||||||||||||||||||||||
|
書籍紹介 徹底攻略Java 2プログラマ問題集 Platform 1.4対応
SUN Java認定コースを担当する著者が臨場感ある問題と解説を書き下ろし!出題傾向をカバーする精錬問題を豊富に用意しているので、短期間で効率よく学習できます。実際の出題傾向を問題に盛り込むほか、詳しい解説をそれぞれ用意。単純な正否だけでなく、選択肢ごとになぜこれが正しいか、誤っているかその根拠をていねいに紹介しています。最終章の総仕上げ問題で試験の模擬対策も万全です!発売日:2004.12.17発売 販売価格:3,360円(税込) |
||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||


