命令模式实验报告模板.doc_第1页
命令模式实验报告模板.doc_第2页
命令模式实验报告模板.doc_第3页
命令模式实验报告模板.doc_第4页
命令模式实验报告模板.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

XXXXXX学校实 验 报 告课程名称:Java设计模式 班级: 11软件工程学号: 姓名: 实验二 命令模式的应用1. 实验目的1、掌握命令模式的结构和使用环境2、应用命令模式解决实际问题2. 实验内容实现一个通讯录程序,命令模式下的JAVA程序, 该程序具备添加,删除,和查看通讯录信息的功能界面: 1.添加联系人信息 2删除联系人信息 3查看联系人信息 - 当点击按钮添加时,以进入添加联系人信息,添加的信息包括姓名和电话号码 当点击按钮删除时,可进入删除联系人信息,通过输入联系人姓名完成删除。 当点击按钮查看时,可进行查看,通过输入联系人姓名,查看其他电话号码。 3. 实验步骤(1) 设计思路:(需要几个类、接口,它们各自的角色并画出类图)实验的设计思路才用命令模式,其中请求者为AddressBook.java,接受者为Woker.java,命令接口为Command.java,具体命令有三个分别为AdditionCommand.Java,DeleteCommand.java,QueryCommand.java,以及main类AddressBookMain.java.UML建模图如下:(2) 程序代码(需加注释)实验二 命令模式的应用1. 实验目的1、掌握命令模式的结构和使用环境2、应用命令模式解决实际问题2. 实验内容实现一个通讯录程序,命令模式下的JAVA程序, 该程序具备添加,删除,和查看通讯录信息的功能界面: 1.添加联系人信息 2删除联系人信息 3查看联系人信息 - 当点击按钮添加时,以进入添加联系人信息,添加的信息包括姓名和电话号码 当点击按钮删除时,可进入删除联系人信息,通过输入联系人姓名完成删除。 当点击按钮查看时,可进行查看,通过输入联系人姓名,查看其他电话号码。 3. 实验步骤(1) 设计思路:(需要几个类、接口,它们各自的角色并画出类图)主类package honework1;import java.awt.HeadlessException;import java.awt.*;import javax.swing.*;public class People extends JFrame Invoke del,add,che;UserList user; People() setLayout(new FlowLayout();/设置页面的布局setTitle(通讯录);del = new Invoke();/添加三个按钮add = new Invoke();che = new Invoke();user = new UserList();del.setCommand(new Del(user);add.setCommand(new Add(user);che.setCommand(new Check(user);add(del.getButton();/把按钮放到页面中add(add.getButton();add(che.getButton();add(user);setSize(300,300);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);/实现窗口的关闭setVisible(true); public static void main(String args)People people = new People();接受者package honework1;import java.awt.TextField;import java.util.*;import javax.swing.*;public class UserList extends JPanelHashMap hm=new HashMap();JTextField text1,text2;public UserList() text1=new JTextField(10); add(text1); text2=new JTextField(10); add(text2);/实现在hashmap中添加一条记录的功能public void add()String str=text1.getText();String str1=text2.getText();Random r1=new Random();hm.put(str,str1);text1.setText(null);text2.setText(null);/实现在hashmap中删除一条记录的功能public void del() hm.remove(text1.getText();text1.setText(null);text2.setText(null);/实现在hashmap中查询记录的功能public void check() String str=text1.getText();String str1=hm.get(str);text2.setText(str1); 具体命令:package honework1;public class Del implements Command UserList list; Del(UserList list) this.list = list; public void execute() list.del();public String getName() return 删除联系人;package honework1;public class Add implements Command UserList list; Add(UserList list) this.list = list; public void execute() list.add(); public String getName() return 添加联系人;package honework1;public class Check implements Command UserList list; String name; Check(UserList list) this.list = list; public void execute() list.check();public String getName() return 查询联系人;请求者:package honework1;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;public class Invoke JButton button; Command command; Invoke() button = new JButton(); button.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) excuteCommand(); ); public void setCommand(Command command) mand = command;button.setText(command.getName(); public void excuteCommand() command.execute(); public JButton getButton() return button; (2) 运行截图(3) 实验结果与体会: 通过这个小小的通讯录,这个实验主要目的是为了使我们掌握命令模式 。但是在做的过程中,它不仅是我对过去所学的Java的知识得到了巩固,而且也让我学到了新的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论