ここでは、当社の新人研修受講者に向けて、基本情報のJavaの過去問を掲載しています。

想定しているのは、NetBeansなどのIDEにコピー・ペーストしたうえで、自分の正しいと思う答えを埋めて動作を確認するという使い方です。


次の Java プログラムの説明及びプログラムを読んで,設問に答えよ。

〔プログラムの説明〕

 このプログラムは,数量の単位変換を行う共通機能を提供するクラス群と, それらのテストプログラムからなる。 テストプログラムでは,セルシウス温度(セ氏温度,゜C)及びカ氏温度 (゜F)の変換を行うクラスを利用する。

(1) インタフェース Converter は,単位変換を行うクラスが実装すべきインタフェースを定義する。

(2) クラス ConverterRunner は,単位変換クラスを利用するプログラムからアクセスするためのクラスである。

  ① メソッド setConverter は,単位変換クラスのインスタンスを設定する。

  ② メソッド run は,単位変換クラスのメソッド convert を呼び出す。

(3) クラス CtoF は,セ氏温度の値を,カ氏温度に変換する処理を実装するクラスである。

(4) クラス FtoC は,カ氏温度の値を,セ氏温度に変換する処理を実装するクラスである。

(5) クラス TestConverter は,単位変換クラスを利用するテストプログラムである。メソッド main は,実行すべき単位変換処理(1 : カ氏-セ氏変換, 2 : セ氏-カ氏変換,q : 終了)の選択を促してから, 入力された値を指定された処理に従って変換する。 実行例を図に示す。

   図 クラス TestConverter の実行例

[プログラム1]

[プログラム2]

[プログラム3]

[プログラム4]

[プログラム5]

設問 プログラム中の/*  */に入れる正しい答えを,解答群の中から選べ。

a に関する解答群

ア abstract public void convert();

イ public double convert(double input) { }

ウ public double convert(double input);

エ public double convert(String input);

b に関する解答群

ア Converter

イ ConverterRunner

ウ CtoF

エ FtoC

c に関する解答群

ア extends Converter

イ extends ConverterRunner

ウ implements Converter

エ implements ConverterRunner

d に関する解答群

ア runner.conv.convert(Double.parseDouble(value));

イ runner.conv.run(value);

ウ runner.convert(Double.parseDouble(value));

エ runner.run(value);