JAVA第七次作业

(一)学习总结

1.写出事件处理模型中的几个关键词,并通过具体代码实例说明你对事件处理模型的理解

Java事件处理三要素:

1) 事件源(Event Source):即事件发生的场所,就是指各个组件,如按钮等,点击按钮其实就是组件上发生的一个事件;

2) 事件(Event):事件封装了组件上发生的事情,比如按钮单击、按钮松开等等;

3) 事件监听器(Event Listener):负责监听事件源上发生的特定类型的事件,当事件到来时还必须负责处理相应的事件;

public class AwtTest {

Frame f = new Frame("Event Test");
TextField tf = new TextField(30);
Button ok = new Button("OK");

class OkListener implements ActionListener {

	@Override
	public void actionPerformed(ActionEvent e) {
		// TODO Auto-generated method stub
		System.out.println("OK button pushed!");
		tf.setText("Hello!");
	}
	
}

public void init() {
	f.add(tf);
	f.add(ok, BorderLayout.SOUTH);
	
	ok.addActionListener(new OkListener());
	
	f.pack();
	f.setVisible(true);
}

public static void main(String[] args) {
	
	new AwtTest().init();
}

}

事件源-监听器多对多示例:

public class AwtTest {

Frame f = new Frame("Multiple Event Test");
TextArea ta = new TextArea(6, 40);

Panel p = new Panel();
Button btn1 = new Button("button1");
Button btn2 = new Button("button2");

class Listener1 implements ActionListener {

	@Override
	public void actionPerformed(ActionEvent e) {
		// TODO Auto-generated method stub
		ta.append("Listener1 be activated! Event Source:" + e.getActionCommand() + "\n");
	}

}

class Listener2 implements ActionListener {

	@Override
	public void actionPerformed(ActionEvent e) {
		// TODO Auto-generated method stub
		ta.append("Listener2 be activated! Event Source:" + e.getActionCommand() + "\n");
	}

}

public void init() {
	f.add(ta);
	p.add(btn1);
	p.add(btn2);
	f.add(p, BorderLayout.SOUTH);
	
	Listener1 l1 = new Listener1();
	Listener2 l2 = new Listener2();
	
	btn1.addActionListener(l1);
	btn2.addActionListener(l1);
	btn2.addActionListener(l2);
	
	f.pack();
	f.setVisible(true);
}

public static void main(String[] args) {

	new AwtTest().init();
}

}

(二)实验总结

实验内容:

基本要求:

使用GUI,编写一个宠物商店管理系统实现对宠物信息的统一管理。假设宠物种类有猫、狗,宠物信息包括:编号、品种、年龄、数量、价格。系统启动进入登录界面,登录成功进入管理界面,否则提出错误信息后退出系统。

在管理界面实现以下功能:

(1)显示所有宠物列表

(2)添加宠物到列表

(3)删除宠物

(4)对宠物信息进行修改

(5)退出

功能扩展:

用户分为管理员和普通用户两种,增加普通用户注册功能,增加普通用户界面。

实现以下功能:

(1)显示所有宠物

(2)能够按照品种对宠物进行查找

(3)购买宠物

(4)显示购买清单

(5)退出

程序设计思路:

1.定义一个宠物信息Petmessage类,定义宠物的编号、姓名、种类、年龄、价格、数量属性和get、set方法。

2、定义一个宠物店的信息PetBase类,宠物店里有哪些宠物,用集合来存储宠物信息。

3,、定义一个管理员访问信息Administrator类,当访问宠物商店时展示商店里有那些宠物,并且定义添加宠物和删除宠物的方法。

4、定义一个管理员管理宠物AdministratorSever类,定义方法展示所有的宠物,定义添加方法添加宠物。

5、定义一个Tool类,确定视图中登录界面和展示界面的窗口位置。

(三)代码托管(https://git.oschina.net/hebau_cs15/shiyanqi.git)

•码云commit历史截图

上传实验项目代码到码云,在码云项目中选择“统计-commits”,设置搜索时间段,搜索本周提交历史,并截图。

posted @ 2017-05-11 10:33  胡开辉  阅读(199)  评论(0编辑  收藏  举报