有谁能给我这段代码做个详细的解释

来源:百度知道 编辑:UC知道 时间:2024/09/28 09:11:10
public void num(int i){
String s = null;
s=String.valueOf(i);
if(end){
//如果数字输入结束,则将文本框置零,重新输入
resultField.setText("0");
end=false;

}
if((resultField.getText()).equals("0")){
//如果文本框的内容为零,则覆盖文本框的内容
resultField.setText(s);

}
else{
//如果文本框的内容不为零,则在内容后面添加数字
str = resultField.getText() + s;
resultField.setText(str);

}
}

public void actionPerformed(ActionEvent e){ //数字事件
if(e.getSource()==s1)
num(1);
else if(e.getSource()==s2)
num(2);
else if(e.getSource()==s3)
num(3);
else if(e.getSource()==s4)
num(4);
else if(e.getSource()==s5)
num(5);
else if(e.getSource()==s6)
num(6);
else if(e.getSource()==s7)
num(7);
else if(e.getSource()==s8)
num(8);
else i

这段代码不全 但是看actionPerformed就知道 这个一个实现了ActionListener 的对象
具体他是个内部类 还是个其他啥的不知道了
在以后应该这个对象被注册
按按钮之后就执行actionPerformed的方法
由e.getSource()==s1 可以看出 (假设这个是一个Jframe)存在多个被注册的按钮 getSource()去判断是哪个按钮
由存在大量的 s1 s2 以及 b1 b2 等命名 可以看出 这个是一个计算器
并且 灾难到仅仅存在+-*/功能 当然注释里还有个“等号”两字……