作业5 四则运算 测试与封装
主函数:
1 package tion; 2 3 import java.util.*; 4 import java.applet.*; //引入Applet类 5 import java.awt.*; 6 import java.awt.event.*; //引入系统事件类包。 7 public class ta extends Applet implements ActionListener{//定义类的同时实现动作事件监听接口。 8 Label label1,label2,label3,label4; //声明四个标签对象。 9 TextField tf1; //声明一个文本框对象 10 TextArea area; //声明一个文本区域对象 11 Button bt1,bt2; //声明两个按钮对象 12 double lb2=0.0; 13 int s=0; 14 int a=0; 15 int b=0; 16 int y=0; 17 int z=0; 18 //s保存总题数;a保存答对的题数;b保存答错的题数。 19 20 public void init(){ //初始化。 21 label1=new Label(); //创建一个没有显示内容的对象。 22 label2=new Label(); 23 label3=new Label(); 24 label4=new Label("="); //创建一个显示内容为“=”的对象。 25 tf1=new TextField(8); 26 area=new TextArea(13,40);//创建一个13行40列的文本区。 27 bt1=new Button("计分"); //创建一个显示标题为“计分”的按钮。 28 bt2=new Button("重来"); 29 add(label1); 30 add(label2); 31 add(label3); 32 add(label4); 33 add(tf1); 34 add(area); 35 add(bt1); 36 add(bt2); 37 this.setSize(400, 150); 38 //利用顺序布局,增加各组件。 39 tf1.addActionListener(this); 40 bt1.addActionListener(this);bt2.addActionListener(this); //将this注册为ft1、bt1、bt2的单击事件兼听器。 41 label1.setText(String.valueOf((int)(Math.random()*10))); 42 label3.setText(String.valueOf((int)(Math.random()*10)));//随机产生两个10以内的整数并分别显示在标签1、3上。 43 lb2=(Math.random()); //随机产生一个0~1以内的小数。 44 if (lb2>=0 && lb2<=0.25) 45 label2.setText("+"); 46 else if (lb2>0.25 && lb2<=0.5) 47 label2.setText("-"); 48 else if (lb2>0.5 && lb2<=0.75) 49 label2.setText("*"); 50 else if (lb2>0.75 && lb2<=1) 51 label2.setText("/"); 52 } 53 //if 语句用于控制随机显示“+、-、*、/”四个运算符。 54 55 Init init=new Init(); 56 57 @Override 58 public void actionPerformed(ActionEvent e) { 59 // TODO Auto-generated method stub 60 61 } 62 }
测试封装:
1 package tion; 2 3 import java.util.*; 4 import java.applet.*; //引入Applet类 5 import java.awt.*; 6 import java.awt.event.*; //引入系统事件类包。 7 public class ta extends Applet implements ActionListener{//定义类的同时实现动作事件监听接口。 8 Label label1,label2,label3,label4; //声明四个标签对象。 9 TextField tf1; //声明一个文本框对象 10 TextArea area; //声明一个文本区域对象 11 Button bt1,bt2; //声明两个按钮对象 12 double lb2=0.0; 13 int s=0; 14 int a=0; 15 int b=0; 16 int y=0; 17 int z=0; 18 //s保存总题数;a保存答对的题数;b保存答错的题数。 19 20 public void init(){ //初始化。 21 label1=new Label(); //创建一个没有显示内容的对象。 22 label2=new Label(); 23 label3=new Label(); 24 label4=new Label("="); //创建一个显示内容为“=”的对象。 25 tf1=new TextField(8); 26 area=new TextArea(13,40);//创建一个13行40列的文本区。 27 bt1=new Button("计分"); //创建一个显示标题为“计分”的按钮。 28 bt2=new Button("重来"); 29 add(label1); 30 add(label2); 31 add(label3); 32 add(label4); 33 add(tf1); 34 add(area); 35 add(bt1); 36 add(bt2); 37 this.setSize(400, 150); 38 //利用顺序布局,增加各组件。 39 tf1.addActionListener(this); 40 bt1.addActionListener(this);bt2.addActionListener(this); //将this注册为ft1、bt1、bt2的单击事件兼听器。 41 label1.setText(String.valueOf((int)(Math.random()*10))); 42 label3.setText(String.valueOf((int)(Math.random()*10)));//随机产生两个10以内的整数并分别显示在标签1、3上。 43 lb2=(Math.random()); //随机产生一个0~1以内的小数。 44 if (lb2>=0 && lb2<=0.25) 45 label2.setText("+"); 46 else if (lb2>0.25 && lb2<=0.5) 47 label2.setText("-"); 48 else if (lb2>0.5 && lb2<=0.75) 49 label2.setText("*"); 50 else if (lb2>0.75 && lb2<=1) 51 label2.setText("/"); 52 } 53 //if 语句用于控制随机显示“+、-、*、/”四个运算符。 54 55 Init init=new Init(); 56 57 @Override 58 public void actionPerformed(ActionEvent e) { 59 // TODO Auto-generated method stub 60 61 } 62 }
没有太多的时间去写代码,所以用了以前的作业进行修改,封装技术还是会带来一些便利的。