| 学籍番号 | 氏名 |
(3, 3)
| (1) | (B), (C), (F) | (2) | (B) |
(2,3,3,3,3,2,4,4)
| (1) | extends JPanel implements ActionListener | ||
| (2) | Font.decode(name) | (3) | font.deriveFont(size) |
| (4) | label.setFont(font) | (5) | label.setText(name) |
| (6) | extends JPanel | ||
| (7) | e -> { | ||
| △ | |||
| ▽ | |||
| } | |||
| (8) | e -> { | ||
| size *= 1.1; | |||
| ▽ | |||
| } | |||
(F) を入れていない人、(E) を入れてしまった人が多い。
「+」は左から計算するので、(E) は「4 の 3 倍は 444 です。」と出力される。
(C) を入れてしまった人が多い。前半の「Java はメモリー管理を自動化している」は正しいが、 後半の「配列の範囲外をアクセスしてもエラーや例外にならない」は間違っている。
この問の解答の正解率が低い。「public static Font decode(String str)」
となっているので、decode はクラスメソッド(スタティックメソッド)である。つまり Font.decode(…) という使い方をする。
new はコンストラクターの呼出しにつけるものなので必要ない。ファイルの最初のほうに「import static java.awt.Font.decode;」
があれば、単に「decode(name)」と書くことができるが、このプログラムには static import は書かれていない。
この問の解答の正解率が全問中、最低だった。しかし、この問ができないようでは Java は使えない。
「Font.deriveFont(size)」という誤答が一番多かったが、
「public Font deriveFont」となっているので、
deriveFont はクラスメソッドではない。また font に依存しているのに、
この誤答に font が含まれていないのも理解に苦しむ。
▽が抜けている誤答が多い。
これがないと、label オブジェクトのフォントが変わらない。
size *= 1.1; が抜けている誤答がある。
これがないと、肝心のフォントのサイズの変更が起こらない。