玉林市住房和城鄉(xiāng)建設(shè)局網(wǎng)站關(guān)于進(jìn)一步優(yōu)化落實(shí)疫情防控措施
目錄
- 一、背景介紹
- 二、思路&方案
- 三、過程
- 1.適配器模式簡介
- 2.適配器模式的類圖
- 3.適配器模式代碼
- 4.適配器模式,類適配器模式和對(duì)象的對(duì)比
- 5.適配器模式終極奧秘
- 四、總結(jié)
- 五、升華
一、背景介紹
最近公司在對(duì)業(yè)務(wù)模型做構(gòu)建的時(shí)候,涉及到和三方系統(tǒng)的對(duì)接,這讓我想到了適配器模式,而如何正確理解和運(yùn)用適配器模式,相信這篇文章會(huì)給你更深入的體會(huì)。
二、思路&方案
- 1.適配器模式簡介
- 2.適配器模式的類圖
- 3.適配器模式代碼
- 4.適配器模式,類適配器模式和對(duì)象的對(duì)比
- 5.適配器模式終極奧秘
三、過程
1.適配器模式簡介
適配器模式(adapter):將一個(gè)類的接口轉(zhuǎn)換成客戶希望的另一個(gè)接口。Adapter模式將原本由于接口不兼容而不能一起工作的類可以一起工作。
2.適配器模式的類圖
3.適配器模式代碼
package com.a7DesignPattern.a2StructuralType.a01Adapter;/*** 功能描述:** @Author:makang* @Date: 2021/5/3 15:40*/
public class Client {public static void main(String[] args) {//這里通過配置文件+反射實(shí)現(xiàn)具體要new的子類,以遵循開閉原則Target target = new Target();target.Request();target = new Adapter();target.Request();}
}
package com.a7DesignPattern.a2StructuralType.a01Adapter;/*** 功能描述:** @Author:makang* @Date: 2021/5/3 15:26*/
public class Target {public void Request(){System.out.println("target的Request方法輸出");}
}
package com.a7DesignPattern.a2StructuralType.a01Adapter;/*** 功能描述:** @Author:makang* @Date: 2021/5/3 15:35*/
public class Adapter extends Target {Adaptee adaptee = new Adaptee();@Overridepublic void Request() {
// System.out.println("Adapter的Request方法輸出內(nèi)容");adaptee.SpecificRequest();}
}
package com.a7DesignPattern.a2StructuralType.a01Adapter;/*** 功能描述:** @Author:makang* @Date: 2021/5/3 15:34*/
public class Adaptee {public void SpecificRequest(){System.out.println("adaptee的SpecificRequest方法輸出");}
}
4.適配器模式,類適配器模式和對(duì)象的對(duì)比
通過java可以模擬實(shí)現(xiàn)類適配器模式;
- 4.1.用一個(gè)抽象類和一個(gè)接口當(dāng)做類的兩個(gè)父類
- 4.2.將抽象類的抽象方法體(名字、入?yún)?、出?和接口的方法體(名字、入?yún)ⅰ⒊鰠?一致
- 4.3.抽象類和接口分別用在不同的地方
- 4.4.讓給一個(gè)類分別繼承抽象類,和實(shí)現(xiàn)接口;從而達(dá)到在不同地方,適配成相同實(shí)現(xiàn)的效果
5.適配器模式終極奧秘
什么時(shí)候考慮使用適配器模式? 永遠(yuǎn)都用不到適配器模式的時(shí)候就是對(duì)適配器模式最好的運(yùn)用。
四、總結(jié)
- 1.適配器屬于一種亡羊補(bǔ)牢的手法,但是也總比亡羊不補(bǔ)來的要好
- 2.適配器真正帶給我們的思考,是在讓我們強(qiáng)化前期的設(shè)計(jì),以及對(duì)于七大原則的嚴(yán)格遵守
- 3.如果非得牽強(qiáng)的找一些場景的話,可以用在對(duì)接三方系統(tǒng)的場景上
五、升華
模式背后的邏輯,要在宏觀的層面去了解它,你就會(huì)發(fā)現(xiàn)不識(shí)廬山真面目的意境。