java 設計模式之介面卡模式(五)
阿新 • • 發佈:2021-01-16
java 設計模式之介面卡模式⑤
人生,沒有永遠的傷痛,再深的痛,在切之時,傷口總會痊癒。人生,沒有過不去的坎,你不可以坐在坎邊等它消失,你只能想辦法穿過它。人生,沒有永遠的愛情,沒有結局的感情,總要結束;不能擁有的人,總會忘記。
結構型模式分類
- 介面卡模式
- 代理模式
- 橋接模式
- 裝飾模式
- 組合模式
- 外觀模式
- 享元模式
結構型模式定義
從程式的結構上實現鬆耦合,從而擴大整體結構,用來解決更大的問題
介面卡模式定義
將一個類的介面實現成客戶端想要的介面,介面卡模式就是將2個毫無關係的類組好到一起,起到一個’中間商’的作用,可以讓他們一起工作
分析
效果圖(1.1)
:
現在科技越來越進步,電腦是越來越薄,導致網線插補到電腦上,這裡就相當於使用了介面卡模式,將網線和電腦合併到一起,可以讓電腦連線到網路!
程式碼實現:
Computer 電腦類:
public class Computer {
//電腦需要轉接線才能上網
public void net(Adapter adapter){
adapter.net();
}
}
Netting 網線類:
public class Netting {
public void ConnectNetwork(){
Log.i("介面卡模式:" ,"已經連線網路");
}
}
INettingToComputer網線介面(為了滿足開閉原則)
public interface INettingToComputer {
public void net();
}
Adapter轉換器:
public class Adapter implements INettingToComputer{
private Netting netting;
//將網線組合進來
public Adapter(Netting netting) {
this.netting = netting;
}
@Override
public void net() {
netting.ConnectNetwork();
}
}
程式碼實現:
//電腦
Computer computer = new Computer();
//網路
Netting netting = new Netting();
//轉換器
Adapter adapter = new Adapter(netting);
//電腦通過轉換器連線網路
computer.net(adapter);
效果圖(1.2)
:
分析:
- Adapter 介面卡
- Computer 電腦
- Netting 網線
- INettingToComputer網線介面(Adapter實現)
優點:
- 一個物件介面卡把多個不同不同的適配者適配到同一個類中
- 可以適配一個適配者的子類,由於介面卡和適配者之前是關聯關係,根據里氏替換原則適配者的子類也可以通過該介面卡進行適配.
這就是一個簡單的介面卡模式
最近文章:
原創不易,記得點個贊支援一下哦~