您的位置:首页 > 编程语言 > Java开发

JAVA中的设计模式 - 外观模式

2017-08-06 20:46 190 查看

JAVA中的设计模式 - 外观模式

#

/**
* 开关接口
*
* 该接口的意义是为了抓取事物的共性
* 设计模式很多,在使用的时候应该抓取精髓,而不是简单的套用
* 用多了,你也应该具备根据不同的情况发展不同的模式的能力
* 你甚至要可以改进设计模式
* 亦或设计更符合实际情况的模式
*
* 得益于模块化的思想,我们可以更换模块而不需要整体更换
* 但是,模块化的路上,我们也应该继续坚持设计原则
* 让设计在模块化的发展之路上,仍然能够保持良好的接口对接原则
* 即:设计规范
* 模块化让设计从单个整体变成了多个整体共同协作
* 那么,整体与整体之间,也存在共性
* 共性即可以形成规范,方便维护和管理
*
* 比如:设备中存在10台电机,如果电机采用统一规范制作
* 就有可能在紧急情况下把制冷电机替换坏掉的动力辅助电机
*
* 比如:各种国际规范,各种商品想要进入国际市场,就需要符合国际规范
*/
public interface OnOff {
void on();
void off();
}


public class CPU implements OnOff{
@Override
public void on() {
System.out.println("CPU : ON");
}

@Override
public void off() {
System.out.println("CPU : OFF");
}
}


public class Memory implements OnOff{
@Override
public void on() {
System.out.println("Memory : ON");
}

@Override
public void off() {
System.out.println("Memory : OFF");
}
}


public class Disk implements OnOff{
@Override
public void on() {
System.out.println("Disk : ON");
}

@Override
public void off() {
System.out.println("Disk : OFF");
}
}


public class Computer implements OnOff{

private CPU cpu;
private Memory memory;
private Disk disk;

public Computer(){
this.cpu = new CPU();
this.disk = new Disk();
this.memory = new Memory();
}

@Override
public void on() {
cpu.on();
disk.on();
memory.on();
System.out.println("Computer : ON");
}

@Override
public void off() {
cpu.off();
disk.off();
memory.off();
System.out.println("Computer : OFF");
}
}


public class User {
public static void main(String[] args) {
Computer computer = new Computer();
computer.on();
computer.off();
}
}


CPU : ON
Disk : ON
Memory : ON
Computer : ON
CPU : OFF
Disk : OFF
Memory : OFF
Computer : OFF
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: