在电脑主机(MainFrame)中只需要按下主机的开机按钮(on()),即可调用其它硬件设备和软件的启动方法,如内存(Memory)的自检(check())、CPU的运行(run())、硬盘(Hard
2024-10-20 19:01:35
欢迎大家加入我的社区:http://t.csdn.cn/Q52km
社区中不定时发红包
1、UML类图
2、源码
package com.zheng;
public class MainFrame {
private Memory memory=new Memory(); //关联关系建立联系
private Cpu cpu=new Cpu();
private HardDisk harddisk=new HardDisk();
private Os os=new Os();
public void fun() {
memory.display();
cpu.display();
harddisk.display();
os.display();
System.out.println("开机正常");
}
}
package com.zheng;
public class Memory {
public void display() {
System.out.println("1、内存正常");
}
}
package com.zheng;
public class Cpu {
public void display() {
System.out.println("2、cpu运行正常");
}
}
package com.zheng;
public class HardDisk {
public void display() {
System.out.println("3、硬盘读取正常");
}
}
package com.zheng;
public class Os {
public void display() {
System.out.println("4、操作系统载入正常");
}
}
package com.zheng;
import java.util.Scanner;
public class Client {
public static void main(String[] args) {
// TODO 自动生成的方法存根
while (true) {
MainFrame f = new MainFrame();
Scanner scan = new Scanner(System.in);
System.out.println("请输入ON进行开机:");
String str = scan.nextLine();
if (str.equals("ON")) {
f.fun();
} else {
System.out.println("输入的信息有误!!!请重新输入");
}
}
}
}
3、优缺点
优点:1、实现了子系统和客户端之间的松耦合关系,这使得子系统的变化不会影响到调用它的客户端,只需要调整外观模式就可以。2、一个子系统的修改对其他子系统没有任何影响。3、对客户端屏蔽了子系统的组件,减少了客户端所需处理的对象数目。
缺点:1、如果设计不当、增加新的子系统可能需要修改外观类的源代码,违反了开闭原则。2、不能很好的限制客户端直接使用子系统类。
最新文章
- 数据结构图文解析之:哈夫曼树与哈夫曼编码详解及C++模板实现
- R 网页数据爬虫1
- C++ 析构方法
- IOS Note - Outlet(插座) &; Action(动作)
- MOSS母板页制作 学习笔记(一)
- JAVA泛型-擦除
- java.lang.RuntimeException: Unable to start activity ComponentInfo
- CRtmpServer分析与应用
- java 单链表的实现
- 理解OC“属性”这一概念
- 再看Java基本类型
- 深入浅出解读 Java 虚拟机的差别测试技术
- 极速在mac中安装python开发环境
- mysql无法远程连接
- 深度学习attention 机制了解
- Zabbix监控数据库连通性所遇问题
- scala--函数式对象
- 番外篇 之 Win32Api
- (一)Tensorflow安装
- Mac安装Maven