实验4 外观模式

上传人:m**** 文档编号:217370080 上传时间:2023-06-12 格式:DOCX 页数:5 大小:29.24KB
收藏 版权申诉 举报 下载
实验4 外观模式_第1页
第1页 / 共5页
实验4 外观模式_第2页
第2页 / 共5页
实验4 外观模式_第3页
第3页 / 共5页
资源描述:

《实验4 外观模式》由会员分享,可在线阅读,更多相关《实验4 外观模式(5页珍藏版)》请在装配图网上搜索。

1、实验报告课稈:设计模式实验学期:2015-2016学年 第2学期任课教师:专业: 软件外包 学号: 姓名:成绩:实验4外观模式1题目:使用外观模式实现教室设备的控制器,包括上课和下课两个按钮,设备包括电脑、幕 布、投影仪、话筒、黑板灯。2模式设计的UML类图:ClassroonnFa cbcJqUse-rFace1Computer computerScreen screenProjector projectorMicro phon 巳 microphone Blackb-oardLight b-lack.ho日ciLight 5iarClass()endClassi)C&rriputerPro

2、jectorMicrophcne呗)onQoffQScreen downQBlackboard Liqht oriO3程序源代码:(1)电脑控制的类Computer.java:public class Computer String description;public Computer(String description this.description = description;public String on()return this.description + 已打开;public String off()return this.description + 已关闭;(2)幕布控制的

3、类Screen.java:public class Screen String description;public Screen(String description) this.description = description;public String down()return this.description + 正在打开; public String up()return this.description + 正在关闭; (3 )投影仪控制的类Projector.java:public class Projector String description;public Projec

4、tor(String description) this.description = description;public String on()return this.description + 已打开;public String off()return this.description + 已关闭;(4)话筒控制的类 Microphone.java:public class Microphone String description;public Microphone(String description) this.description = description;public Str

5、ing on()return this.description + 已打开;public String off()return this.description + 已关闭;(5)黑板灯控制的类 BlackboardLight.java:public class BlackboardLight String description;public BlackboardLight(String description) this.description = description;public String on()return this.description + 已打开;public Stri

6、ng off()return this.description + 已关闭;(6)教室设备外观类 ClassroomFacade.java:public class ClassroomFacade Computer computer;Screen screen;Projector projector;Microphone microphone;BlackboardLight blackboardLight;public ClassroomFacade(Computer computer,Screen screen,Projector projector,Microphone microphon

7、e,BlackboardLight blackboardLight) puter = computer;this.screen = screen;this.projector = projector;this.microphone = microphone; this.blackboardLight = blackboardLight;public String starClass()String str = new String5;str0 = computer.on();str1 = screen.down();str2 = projector.on();str3 = microphone

8、.on();str4 = blackboardLight.on();return str;public String endClass() String str = new String5; str0 = computer.off(); str1 = screen.up(); str2 = projector.off(); str3 = microphone.off(); str4 = blackboardLight.off(); return str;(7)实现用户界面的主类UserFace.java:(由于代码过长,只列出重要部分)import java.awt.*;import java

9、.awt.event.*;import javax.swing.*;public class UserFace extends JFrame private JButton StarButton; private JButton EndButton;private JButton ExitButton;private JLabel jLabel1;private JLabel jLabel2;private JLabel jLabel3;private JLabel jLabel4;private JLabel jLabel5;private JPanel jPanel1;private JP

10、anel jPanel2;private JTextField jTextField1;private JTextField jTextField2;private JTextField jTextField3;private JTextField jTextField4;private JTextField jTextField5;private ClassroomFacade classroomFacade;private Computer computer;private Screen screen;private Projector projector;private Micropho

11、ne microphone;private BlackboardLight blackboardLight;public UserFace() super(XXXXXXXXX);setDefaultCloseOperation(WindowConstant EXIT_ON_CLOSE ); jPanel1 = new JPanel();StarButton = new JButton(” 上课); EndButton = new JButton(下课); ExitButton = new JButton(退出);jPanel2 = new JPanel(); jLabell = new JLa

12、bel(电脑:);jTextField1 = jLabel2 = newnew JTextField(); JLabel(幕布:);jTextField2 = new JTextField(); jLabel3 = new JLabel(投影仪:);jTextField3 = new JTextField(); jLabel4 = new JLabel(话筒:);jTextField4 = new JTextField(); jLabel5 = new JLabel(黑板灯:);jTextField5 = new JTextField();computer = new Computer(教室电

13、脑); screen = new Screen(教室幕布); projector = new Projector(教室投影仪); microphone = new Microphone(教室话筒); blackboardLight = new BlackboardLight(教室黑板灯);StarButton.addActionListener(new ActionListener() public void actionPerformed(ActionEvent evt) String str = new String5;classroomFacade = new ClassroomFaca

14、de (computer,screen,projector,microphone,blackboardLight); str classroomFacade.starClass(); jTextField1.setText(str0); jTextField2.setText(str1); jTextField3.setText(str2); jTextField4.setText(str3); jTextField5.setText(str4););EndButton.addActionListener(new ActionListener() public void actionPerfo

15、rmed(ActionEvent evt) String str = new String5;classroomFacade = new ClassroomFacade(computer,screen,projector,microphone,blackboardLight); str classroomFacade.endClass();jTextField1.setText(str0);jTextField2.setText(str1);jTextField3.setText(str2);jTextField4.setText(str3);jTextField5.setText(str4)

16、; );ExitButton.addActionListener(new ActionListener() public void actionPerformed(ActionEvent evt) Systexit(0););jPanel1.setBorder(BorderFactory.createTitledBorder(按钮); jPanel2.setBorder(BorderFactory.createTitledBorder(信息); setLocationRelativeT this);pack();public static void main(String args) java.awt.EventQueueinvokeLater (new Runnable() public void run() new UserFace().setVisible(true););4实验结果截图:上谍下遷遍岀上课下遷遍岀信息信息錦肺;載室弟冇止在矢闭投需仪:埶室投尉仪已打开话間:埶室话筒已杆幵话懂:執室话筒已关闭奧梅文T;埶室黒梅灯己打开

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!