1、減少系統(tǒng)的相互依賴。如果不使用立面模式,外部訪問將直接深入子系統(tǒng)。
這是一種強(qiáng)烈的耦合關(guān)系,這是系統(tǒng)設(shè)計(jì)無法接受的。門面模式的出項(xiàng)很好地解決了這個(gè)問題,所有的依賴都是對(duì)門面對(duì)象的依賴,與子系統(tǒng)無關(guān)。
2、提高了靈活性。依賴減少,靈活性自然提高。
3、提高安全性。想讓你訪問子系統(tǒng)的業(yè)務(wù)就打開那些邏輯,不在門面打開的方法就不能訪問。
實(shí)例
package com.sl.demo.facade;
/**
* 電腦(門面角色)
* @author pengkun
*
*/
public class Computer {
//包含子系統(tǒng)
private CPU cpu;
private GraphicsCard graphicsCard;
private Memory memory;
public Computer() {
super();
this.cpu =new CPU();
this.graphicsCard = new GraphicsCard();
this.memory = new Memory();
}
//開啟
public void start() {
System.out.println("電腦開啟了。。。。");
cpu.start();
graphicsCard.start();
memory.start();
}
//關(guān)閉
public void stop() {
System.out.println("電腦關(guān)閉了。。。。");
cpu.stop();
graphicsCard.stop();
memory.stop();
}
}
以上就是java門面模式的優(yōu)勢(shì),希望對(duì)大家有所幫助。更多關(guān)于“Java培訓(xùn)”的問題,歡迎咨詢千鋒教育在線名師。千鋒已有十余年的培訓(xùn)經(jīng)驗(yàn),課程大綱更科學(xué)更專業(yè),有針對(duì)零基礎(chǔ)的就業(yè)班,有針對(duì)想提升技術(shù)的好程序員班,高品質(zhì)課程助力你實(shí)現(xiàn)java程序員夢(mèng)想。