オブジェクト - みる会図書館


検索対象: Java 2 : 試験番号:301-025
339件見つかりました。

1. Java 2 : 試験番号:301-025

練習問題 問題 9 - 5 0 切 ect クラスには wait ( ) メソッドがあり、これを使って複数のスレッドか ら 1 つのオブジェクトへのアクセスを調整することができます。 wait ( ) メソッ ドの説明として、正しいものはどれですか ( 正しいものをすべて選んでくださ 9 練習問題 ロ A. wait ( ) メソッドは Object クラスのインスタンスメソッドである ロ B. wait() メソッドは Object クラスの static メソッドである ロ c. wait ( ) メソッドを呼び出すには、 Th 「 ead オブジェクトが使用するオ ブジェクトをロックしなければならない ロ D. 1 つのオブジェクトに対して待機状態にできるのは、 1 度に 1 つのス レッドだけである 正解は選択肢 A と選択肢 C です。 w 血 () メソッドはインスタンスメソッドなの で、選択肢 A は正解です。オプジェクトをロックしていないスレッドが待機しよ うとすると、例外 IllegalMonitorStateException が発生するので、選択肢 C は正解 です。 w 凾 t ( ) メソッドは各オプジェクトへのアクセスを制御するためのメソッド であり、各オプジェクトがそれぞれ独自の w ⅲ t() メソッドを持つので、選択肢 B は不正解です。 1 つのオプジェクトを複数のスレッドが待機できるので、選択肢 D は不正解です。 235

2. Java 2 : 試験番号:301-025

第 14 章入出力 解説 正解は選択肢 C です。 U 糺オプジェクトの叩 ens 仕 eam ( ) メソッドは、 HITP プ ロトコルを使って Web サーバーとの接続を確立します。選択肢 B の「 IS0885 1 」 は C Ⅱ工ンコーディング用のローカル文字列です。選択肢 A の UDP ( ユーザー データグラムプロトコル ) はデータグラム転送でのみ使われます。選択肢 D の Mul ⅱ cast はデータグラムを複数のアドレスに送信するための方式です。 問題 14 - 8 ObjectOutputStream オブジェクトを使って複雑なオブジェクトのシリアラ イゼーションを行う際に、プログラマが注意すべきことは何ですか。 オブジェクトが Se ⅱ a ⅱ zab クラスから派生していなければならない か E erna ⅱ zab インタフェースを実装していなければならない 〇 C. オブジェクトまたは親オブジェクトが、 Se 「 ia ⅱ zab インタフェース オブジェクトの総サイズは 65535 バイト未満でなければならない セスが無限ループに陥る ブジェクト A を参照していてはならない。このような状況ではプロ クト A がオブジェクト B を参照している場合、オブジェクト B はオ オブジェクトが循環参照を持っていてはならない。つまり、オブジェ 〇 D. 〇 B. 〇 A. 396 はなくインタフェースなので、選択肢 D は不正解です。 トのサイズには制限がないので、選択肢 B は不正解です。ⅱ zable はクラスで 決できるので、選択肢 A は不正解です。シリアライゼーションを行うオプジェク 正解は選択肢 C です。 ObjectOutputStream オプジェクトは循環参照を正しく解 解説

3. Java 2 : 試験番号:301-025

第 6 章基本データ型とオブジェクトの変換とキャスト double d = Math. sqrt( ー 1 . 0 ) : 土 n に x = は n 切 d System. 0uセ . println ("Va1ue / / つまり Doub1e. NaN doub 厄型から float 型へのキャスト double 型で表現される値の範囲は float 型よりもはるかに大きいので、 double 型 から float 型へのキャストは思わぬ結果になる可能性があります。 Java では、次の IEEE7 標準に従ってこのキャストを実行します。 > - float 型では表現できないほど小さい dou e 型値は、正または負のゼロになる > ・ float 型では表現できないほど大きい doub 厄型値は、正または負の無限大 (infinity) になる > 、特殊な値 NaN ( 非数 ) の doub 型は、 float 型の NaN 値になる 参照型の変換とキャスト Java には、クラス型、インタフェース型、配列型の 3 種類の参照型変数があり ます。 Object 型の変数には、これらの 3 種類の参照型のどれでも格納することが できます。 Object クラスは、 Java オプジェクト階層のルートだからです。 ()bject 参照を受け取るメソッドはどのオプジェクトでも参照することができるので、 の点は重要です。 ヒン 基本データ型の変換やキャストとはまったく違って、変数への参照 の変換やキャストでは、参照先のオブジェクトは変更されません。 作成されたオブジェクトを参照する方法はいくつもありますが、オ 型によって決まります。 ブジェクトの型は不変です。ただし、式で参照を使う方法は、参照 i nstanceof 演算子 オプジェクトは、常に自分の型を知っています。プログラムでオプジェクト参 138

4. Java 2 : 試験番号:301-025

オブジェクトの同一性 if ( ! ( obj instanceof 工 nteger ) ) return false return this . value ( ( 工 nteger) 0bj ) . intVa1ue ( ) っ 0 4- 【う ) この equ s ( ) メソッドでは、指定のオプジェクト参照が、 nu Ⅱではなく lnteger オプジェクトを指していることを確認した後で、そのオプジェクトの値をチェッ クしていることに注意してください。 Object クラス (Java クラス階層のルート ) の equals() メソッドは、次の条件が成り立つ場合にだけ血 e を返します。 this 0bj 子と equals ( ) メソッドは同じものです。 したがって、 equals() メソッドがオーバーライドされていないかぎり、 = 演算 3 解説 験に = equals( ) メソッドでは、 2 つのオブジェクトのデータ型が一致する る ! 場合にだけ内容の比較が行われることに注意してください。たとえ ばコ ntege 「オブジェクトの equals( ) メソッドに Long オブジェク トを引き渡すと、内容とは関係なく常に回 se が返されます。また、 equals( ) メソッドのシグニチャは、 Object 参照が入力されること を前提としています。基本データ型を指定して equ 引 s ( ) メソッド を呼び出すと、コンバイルエラーになります。 String で = = 演算子を使う際の注意 equ ホ ( ) メソッドを使うべき場面で = 演算子を使ったときによく見られる間違 いの原因は、 S ⅲ ng リテラルの扱われ方です。コンパイラでは、メモリの使用量を 最適化するために、 S ⅲ ng リテラルが再利用されます。大きなプログラムでは、か なりのメモリの節約になります。次に示すコード例では、 Sfring リテラル「 YES 」 が 1 行目と 2 行目で使われていますが、コンパイラでは S ⅲ ng オプジェクトを 1 つ だけ作成し、 sl と s2 の両方にその参照を格納します。したがって、 3 行目では 「 equaIJ が出力されるので、 = 演算子を使って内容の一致をテストできたように 見えます。しかし、 6 行目のチェックでは、オプジェクトが異なるため、常に false が返されます。 65

5. Java 2 : 試験番号:301-025

ビット単位演算子と論理演算子 ( 続き ) 優先度 演算子 説明 演算子の型 左シフト 右シフト ( 算術シフト ) 右シフト ( 論理シフト ) オブジェクトの生成元の ロい 等号 ( 同一オブジェクト ) 不等号 ( 同一オブジェク トではない ) ビット単位の AND 論理 AND ビット単位の XOR 論理 XOR ビット単位の OR 論理〇日 論理 AND ( 条件 ) 論理 OR ( 条件 ) 条件式 代入 左シフトと代入 右シフトと代入 右シフト、ゼロ詰め、代入 ビット単位の AND と代入 論理 AND と代入 ビット単位の OR と代入 整数 くく 整数 整数 左辺 : オブジェクト、 instanceof 右辺 : 対象クラス名 オブジェクト オプジェクト 整数 論理 整数 論理 整数 諞理 論理 論理 論理 変数、任意 2 進数 2 進数 2 進数 2 進数 論理 2 進数 乙・ -4-- 4 ・ LO 6 6 O ィーワ」 CO CO CO ( 0 CO ( 0 「 / マ / 8 8 0) -1 ・ 3 解説 57

6. Java 2 : 試験番号:301-025

練習問題 問題 10 - 5 java. util. vector クラスと java. util. Hashtable クラスの説明として、正しいも のはどれですか ( 正しいものをすべて選んでください ) 。 ロ A. vecto 「クラスには、オブジェクト参照または基本データ型値を格納 できる ロ B. vector クラスは、追加された順序でオブジェクト参照を維持する ロ C. Hash ね b 厄クラスは、キーとして String オブジェクトを使わなけれ ばならない ロ D. Hash ね b クラスは、追加された順序でオブジェクト参照を維持する ロ E. vecto 「クラスと HashtabIe クラスは、どちらも複数のスレッドが同 じコレクションにアクセスしようとした場合の問題を同期メソッド を使って回避する 練問題 正解は選択肢 B と選択肢 E です。 Vector オプジェクトは、追加された順序で オプジェクトを維持するので、選択肢 B は正解です。選択肢 E の説明は、元の CoIIectionsAPI クラスと新しい Co Ⅱ ec ⅱ onsAPI クラスとの主な違いを示している ので、正解です。選択肢 A は不正解です。 Vector クラスに格納できるのはオプジェ クト参照だけです。基本データ型値を格納する必要がある場合は、ラッパークラ スを使ってオプジェクトを作成する必要があります。選択肢 C は不正解です。キー には S ⅲ ng オプジェクトを使うのが一般的ですが、ほかのオプジェクトも使用で きます。選択肢 D は不正解です。 Hash ね ble クラス内のオプジェクトの順序は予測 できません。 265

7. Java 2 : 試験番号:301-025

第 1 1 章 Java AWT コンホーネント > - コンポーネントに関連付けられている現在のフォント。コンポーネントに対 する Font オブジェクトを指定していない場合は、そのコンテナに関連付けら れている Fo 猷オブジェクトが使われるので、 G 「 aphics オブジェクトに対する Font オブジェクトが存在しないということはない 次に JVM は、描画する Component オプジェクトの update() メソッドを呼び出 します。このメソッドは、デフォルトではコンポーネントのバックグランドカ ラーを使ってコンポーネントが占める領域をクリアし、その後 p ⅲ nt メソッドを呼 び出します。 public void update (Graphics g) { g. c1earRect(), の width, height); paint(g) : paint メソッドは、 Graphics オプジェクトを使って Component オプジェクトの残 りの部分を描画します。リスト 11.2 では、 Graphics オプジェクトのメソッドをい くっか使っています。 リスト 11.2 テキストを表示する paint メソッドの例 lmport java . awt. ☆・ public class Lis し 11 ー 2 extends Canvas { public void paint (Graphics g) { g. setFont (new Font ("Serif" Font. BOLD FontMetrics fm = g. getFontMetrics ( ) : ′ 40 ) 房 String str int ascent int descent int length "JOY Of Java!" ・ fm. getAscent ( ) : fm. getDescent ( ) : fm. stringwidth (str); int X = 20 ′ Y = 6 0 : g. setC010r (C010r. darkGray) : 292

8. Java 2 : 試験番号:301-025

第 1 0 章標準ライプラリューティリティクラス 問題 10 - 8 いるクラスはどれですか。 次に示す新しい C ectionsA のクラスのうち、 Vecto 「クラスに最も似て 問題 10 - 9 は存在しないので、選択肢 C は不正解です。 ためのメソッドはないので、選択肢 A は不正解です。 Reflect というオプジェクト ジェクトの配列を取得します。 Object クラスには Me 市 od オプジェクトを取得する 正解は選択肢 B です。調べるクラスを表す Class オプジェクトから Me 山 od オプ 解説 得する 〇 C. 調べるクラスの名前を使用して作成した Re 升 ect オブジェクトから取 得する 〇 B. 調べるクラスの名前を使用して作成した CIass オブジェクトから取 〇 A. 調べるクラスの任意のインスタンスから取得する ものはどれですか。 の情報を取得します。 Method オブジェクトを取得する方法として、正しい java.lang. reflect. Meth0d クラスを使って、あるクラスのメソッドについて 〇 〇 〇 〇 0 268 A. C. E. Collections D. ArrayList AbstractCoIIection B. TreeSet LinkedList

9. Java 2 : 試験番号:301-025

第 12 章 AWT コンボーネントによる GUI の作成 問題 12 - 5 次のコードを使って、 ca 「 d という名前の Ca 「 dLayout オブジェクトを使用 する cnt という名前の panel オブジェクトを作成しました。 card = new CardLayout ( ) : cnt = new PaneI ( card ) ー コンテナにコンポーネントを表示するには、どのコードを使えばよいですか。 〇 A. card. show ( cnt , name 房 cnt にはコンテナを、 name にはコンポーネントの追加時に使用する 制約を示す St ⅱ ng オブジェクトを指定する 〇 B. card. show( cnt, n ) : cnt にはコンテナを、 n にはコンポーネントがコンテナに追加された 順序を表す整数を指定する 〇 C. card. show ( name 房 name には、コンポーネントの追加時に使用する制約を指定する 〇 D. card. show( れ房 n にはコンポーネントがコンテナに追加された順序を表す整数を指定 する 解説 を 正解は選択肢 A です。 CardLayout オプジェクトの show ( ) メソッドには、コン テナへの参照と S ⅵ ng オプジェクトを指定する必要があります。カードレイアウ トは、コンポーネントを選択するために整数ではなく S ⅲ ng オプジェクトを使う ので、選択肢 B と選択肢 D は不正解です。 C 肝 d レ yout オプジェクトの show() メ ソッドにはコンテナへの参照も指定しなければならないので、選択肢 C は不正解 です。 332

10. Java 2 : 試験番号:301-025

第 1 0 章標準ライブラリューティリティクラス 問題 10 - 4 、 Trick! java.lang. Runtime クラスの説明として、正しくないものはどれですか。 〇 A. Runtime オブジェクトを作成するには、次のコードを使う Runtime rt = Runtime . getRuntime ( ) : 〇 B. Runtime オブジェクトには、 JVM にガべージコレクションを開始さ せるためのメソッドがある 〇 C. Runtime オブジェクトの次のメソッド呼び出しは、 JVM が利用でき る空きメモリ量を返す long avail = Runtime . getRuntime ( ) . freeMemory ( ) : 解説 正解は選択肢 A です。この説明は正しくありません。 Runtime オプジェクトは、 プログラムの開始時に作成されます。 getRuntime() メソッドはこのオプジェクト への参照を返すだけです。選択肢 B の説明は正しいので、これは不正解です。選 択肢 C では、 RunümefreeMemory() メソッドの正しい呼び出し方法を示している ので、これは不正解です。 264