1 Java实验五 组件与事件处理 【目的】 ①学习处理ActionEvent事件; ②学习处理ItemEvent事件和paint方法; ③学习使用布局类。 【内容】 1.算术测试。 实验要求: 编写一个算书测试小软件,用来训练小学生的算术能力。程序由3个类组成,其中Teacher类对象负责给出算术题目,并判断回答者的答案是否正确;ComputerFrame类对象负责为算术题目提供视图,比如用户可以通过ComputerFrame类对象提供的GUI界面看到题目,并通过该GUI界面给出题目的答案;MainClass是软件的主类。 程序: Teacher.java public class Teacher { int numberOne, numberTwo; String operator = ""; boolean right; public int giveNumberOne(int n) { numberOne = (int)(Math.random() * n) + 1; return numberOne; } public int giveNumberTwo(int n) { numberTwo = (int)(Math.random() * n) + 1; return numberTwo; } public String giveOperator() { double d = Math.random(); if (d >= 0.5) operator = "+"; else operator = "-"; return operator; } public boolean getRight(int answer) { if (operator.equals("+")) 2 { if (answer == numberOne + numberTwo) right = true; else right = false; } else if (operator.equals("-")) { if (answer == numberOne - numberTwo) right = true; else right = false; } return right; } } ComputerFrame.java import java.awt.*; import java.awt.event.*; public class ComputerFrame extends Frame implements ActionListener { TextField textOne, textTwo, textResult; Button getProblem, giveAnwser; Label operatorLabel, message; Teacher teacher; ComputerFrame(String s) { super(s); teacher = new Teacher(); setLayout(new FlowLayout()); textOne = new TextField(10); //创建textOne,其可见字符长是 textTwo = new TextField(10); //创建textTwo,其可见字符长是 textResult = new TextField(10); //创建textResult,其可见字符长是 operatorLabel = new Label("+"); message = new Label("你还没有回答呢"); getProblem = new Button("获取题目"); giveAnwser = new Button("确认答案"); add(...