国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發(fā)設計 > 正文

設計模式之適配器模式

2019-11-10 20:32:11
字體:
來源:轉載
供稿:網友

適配器模式(Adapter):將一個類的接口轉換成客戶端(client)希望的另外一個接口。Adapter 模式使得原本由于接口不兼容而不能一起工作的那些類可以一起工作。 Convert the interface of a class into another interface the clients expect. Adapter lets classes work together that couldn’t otherwise because of incompatible interfaces.

適配器 這個有類adaptee方法method1()和method2()繼承自ownInterface接口,現在有一個接口target有三個方法,需要用到method1()或者method2(),為了不造成耦合,需要一個適配器adapter將adaptee進行適配(java中有直接繼承adaptee和 委托 方法),這樣client就可以通過target調用adaptee的方法或者是自己實現的another

適配器模式分為類適配器和對象適配器. 類適配器的實現就是通過繼承adaaptee實現適配,對象適配器就是用委托的方式實現適配

原始類

// 原始類public class Adaptee implements OwnInterface { public void method1() { System.out.類適配器

public class Adapter extends Adaptee implements Target{ public void method1() { super.method1(); } public void method2() { super.method2(); } public void method3() { System.out.println("自己實現的功能1"); }}

對象適配器

public class Adapter implements Target{ //委托或者代理 private Adaptee adaptee = new Adaptee(); public void method1() { this.adaptee.method1(); } public void method2() { this.adaptee.method2(); } public void method3() { System.out.println("自己實現的功能1"); }}

client類

public class Client { public static void main(String[] args) { // 使用普通功能類 Target another= new Another(); another.method1(); // 使用特殊功能類,即適配類, // 需要先創(chuàng)建一個被適配類的對象作為參數 Target adapter = new Adapter(); adapter.method1(); }}
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 克拉玛依市| 聂拉木县| 商南县| 霍州市| 内乡县| 镇安县| 玉山县| 海林市| 丹寨县| 涿鹿县| 黑山县| 金华市| 红安县| 东莞市| 京山县| 和田县| 南乐县| 闻喜县| 桦南县| 师宗县| 杭州市| 常熟市| 凤山市| 邵阳县| 门源| 监利县| 波密县| 丰台区| 南康市| 重庆市| 云阳县| 吉木萨尔县| 盐亭县| 三门峡市| 大邑县| 灵石县| 台安县| 名山县| 襄汾县| 启东市| 克山县|