日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

java 中适配器原理_Java经典设计模式中关于适配器模式原理以及用法详解

發布時間:2024/9/19 java 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java 中适配器原理_Java经典设计模式中关于适配器模式原理以及用法详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

這篇文章主要介紹了Java經典設計模式之適配器模式,簡單說明了適配器模式的概念、原理,并結合實例形式分析了java適配器模式的用法與相關注意事項,需要的朋友可以參考下

本文實例講述了Java經典設計模式之適配器模式。分享給大家供大家參考,具體如下:

適配器模式是把一個類的接口適配成用戶所期待的,使得原本由于接口不兼容而不能一起工作的一些類可以在一起工作從而實現用戶所期望的功能。

適配器模式的優勢:

1. 通過適配器,客戶端可以調用統一接口,操作簡單直接,并且代碼邏輯緊湊,使用起來方便。

2. 代碼復用,適配器模式就是解決因為環境要求不相同 的問題,通過適配實現代碼復用。

3. 將目標類和適配器類解耦,通過新建一個適配器類來重用現在的類,不用再去重復修改原有代碼,實現開閉原則。

共有兩類適配器模式

1.對象適配器模式: 在這種適配器模式中,適配器容納一個它包裹的類的實例。在這種情況下,適配器調用被包裹對象的物理實體。

2. 類適配器模式: 這種適配器模式下,適配器繼承自已實現的類(一般多重繼承)。

示例代碼:

/**

* @description:

* 原有的接口功能,比如是給電動車充電功能

*/

public interface FirstBaseIf {

void charging();//充電

}

/**

* 要實現的操作功能

* @description:

*/

public class NewFunction {

public void powerWithTwo(){

System.out.println(“新功能:給電動汽車也可以充電啦”);

}

}

/**

*新建適配器類,來實現對原有接口FirstBaseIf的操作使用

* @description:

*/

public class FunctionAdapter implements FirstBaseIf {

private NewFunction plug;

public FunctionAdapter(NewFunction plug){

this.plug=plug;

}

@Override

public void charging() {//重寫原有接口中的方法,從而實現接口轉化

System.out.println(“通過適配器轉化”);

plug.powerWithTwo();

}

}

//——–測試代碼——————-

public class Test {

private FirstBaseIf plug;

public Test(FirstBaseIf plug) {

this.plug = plug;

}

public static void main(String[] args) {

NewFunction two = new NewFunction();

FirstBaseIf three = new FunctionAdapter(two);//這里就是通過適配器實現轉換

Test note = new Test(three);

note.charge();

}

public void charge() {

plug.charging();//使用原有接口中的功能

}

}

運行結果:

適用場景:

在Java程序中,如果一個抽象類或者接口的話,就必須要重寫所有的抽象方法。

那么,如果一個接口中定義的抽象方法過多,而子類中很多抽象方法又不需要用到,就應該設計一個適配器。通過Java語言進行的Android開發中,就經常會用到適配器模式。

總結

以上是生活随笔為你收集整理的java 中适配器原理_Java经典设计模式中关于适配器模式原理以及用法详解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。