正解: (B), (C)
一つしか選択していない解答は -2 点
正解: (B)
(B) 以外にもう一つ選択している解答は -2 点
Java は C や JavaScript に文法が似ているが、それ以上の関係はない。
(ⅰ), (ⅱ) の正解率はそれぞれ 74.1%, 85.2% だった。
正解:
implements KeyListener
正解率は約 84.4% だった。
正解:
e.getWhen()
正解率は約 74.4% だった。KeyEvent.getWhen() などの間違いが多い。
正解:
e.isShiftDown()
正解率は約 72.6% だった。
(ⅱ), (ⅲ) の正解率は期待しているよりも低い。 (この問題に関しては部分点はほとんどなかったので、満点か零点かである。) getWhen, isShiftDown は KeyEvent クラス (またはそのスーパークラス)のメソッドで、プログラム中に KeyEvent クラスのオブジェクトは e しかないので、 e.getWhen(), e.isShiftDown しかありえない。 getWhen(), KeyEvent.getWhen() や getWhen(this) のような間違いが多かった。 この問題ができなければ、Java を学ぶ甲斐がないと言っても過言でない。
正解:
extends JPanel implements ActionListener
得点率は 82.2 % だった。
正解:
source == input
得点率は 60 % だった。
正解:
source == push
得点率は 60 % だった。
正解:
extends JPanel
このクラス自体に actionPerformed メソッドはないのだから、 implements ActionListener をつけてはいけない。 得点率は 97.8 % だった。
正解:
new ActionListener() { public void actionPerformed(ActionEvent e) { text = input.getText(); label.setText(text); } }
label.setText(text); を忘れている解答が多かった。 一方 repaint(); は必要ない。 得点率は 84.9 % だった。
正解:
e -> { text += emoji; label.setText(text); }
得点率は 88.4 % だった。
匿名クラスとラムダ式については、 問題用紙の末尾にこれらを使った例題プログラムを掲載しているのに、 それを有効に活用できていない人がいるようだった。