国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

03-JAVA設(shè)計(jì)模式-適配器模式

這篇具有很好參考價(jià)值的文章主要介紹了03-JAVA設(shè)計(jì)模式-適配器模式。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

適配器模式

設(shè)么是適配器模式

它屬于結(jié)構(gòu)型模式,主要用于將一個(gè)類的接口轉(zhuǎn)換成客戶端所期望的另一種接口,從而使得原本由于接口不兼容而無法協(xié)同工作的類能夠一起工作。

適配器模式主要解決的是不兼容接口的問題。在軟件開發(fā)中,經(jīng)常會(huì)有這樣的情況:我們有一個(gè)現(xiàn)有的類,它的接口(方法、屬性等)不符合我們的需求,但我們又無法直接修改這個(gè)類(可能是因?yàn)樗堑谌綆斓囊徊糠?,或者出于其他原因)。此時(shí),我們可以使用適配器模式來“包裝”這個(gè)類,使其具有我們期望的接口。

適配器模式的主要形式

  • 類適配器模式:通過多重繼承的方式,適配器類繼承自目標(biāo)接口和適配者類。由于Java不支持多重繼承(除了接口),因此在實(shí)際應(yīng)用中,我們通常會(huì)使用對(duì)象組合的方式來實(shí)現(xiàn)類適配器模式的效果。
  • 對(duì)象適配器模式:適配器類持有適配者類的一個(gè)實(shí)例,并實(shí)現(xiàn)了目標(biāo)接口。當(dāng)客戶端調(diào)用目標(biāo)接口的方法時(shí),適配器類會(huì)調(diào)用適配者類的相應(yīng)方法。
    適配器模式的優(yōu)點(diǎn)包括:

適配器模式特點(diǎn)

  • 提高了類的復(fù)用性:通過適配器,我們可以復(fù)用那些原本不兼容的類。
  • 增加了靈活性:適配器模式使得代碼更加靈活,我們可以很容易地更換適配者類,而不需要修改客戶端代碼。
  • 遵循了“開閉原則”:適配器模式對(duì)修改關(guān)閉,對(duì)擴(kuò)展開放。我們可以通過添加新的適配器類來支持新的適配者類,而不需要修改現(xiàn)有的代碼。

然而,適配器模式也有其局限性。例如,如果適配者類的接口與目標(biāo)接口的差別太大,那么適配器類的實(shí)現(xiàn)可能會(huì)變得非常復(fù)雜和難以維護(hù)。此外,如果過度使用適配器模式,可能會(huì)導(dǎo)致系統(tǒng)結(jié)構(gòu)變得復(fù)雜和混亂。

類適配器

UML

03-JAVA設(shè)計(jì)模式-適配器模式,技術(shù)棧,# Java設(shè)計(jì)模式,java,設(shè)計(jì)模式,適配器模式

  • Adaptee(適配者鍵盤)具有打印功能,但是由于是接口并不適用。
  • Target(目標(biāo)接口)目標(biāo)接口需要通過USB插入
  • Adapter(適配器)實(shí)現(xiàn)目標(biāo)接口,重新輸出方法(通過繼承調(diào)用適配者輸出方法)
  • 測(cè)試時(shí),通過創(chuàng)建適配者Adapter調(diào)用目標(biāo)接口方法即可實(shí)現(xiàn)調(diào)用Adaptee(適配者)相應(yīng)方法

實(shí)現(xiàn)代碼

Adaptee.java

// 這是需要被適配的類,它可能有一個(gè)不兼容的接口。
// 比如:不兼容USB接口的舊鍵盤
public class Adaptee {
    public void print(){
        System.out.println("鍵盤輸出");
    }
}

Target.java

// 這是我們期望得到的接口??蛻舳酸槍?duì)這個(gè)接口編程,而不需要知道具體的實(shí)現(xiàn)細(xì)節(jié)
// 筆記本:USB接口
public interface Target {
    void handlePrint();
}

Adapter.java

// 類適配器
// 適配器:這是適配器模式的核心。適配器類實(shí)現(xiàn)了目標(biāo)接口,并在內(nèi)部持有適配者類的一個(gè)實(shí)例。
// 當(dāng)客戶端調(diào)用目標(biāo)接口的方法時(shí),適配器類會(huì)將調(diào)用委托給適配者類的相應(yīng)方法(可能需要經(jīng)過一些轉(zhuǎn)換)。
public class Adapter extends Adaptee implements Target{
    @Override
    public void handlePrint() {
        super.print();
    }
}

TestClient.java

public class TestClient {
    public static void main(String[] args) {
        // 創(chuàng)建適配器
        Adapter adapter = new Adapter();
        // 測(cè)試
        adapter.handlePrint();
    }
}

執(zhí)行結(jié)果

03-JAVA設(shè)計(jì)模式-適配器模式,技術(shù)棧,# Java設(shè)計(jì)模式,java,設(shè)計(jì)模式,適配器模式

對(duì)象適配器模式

UML

03-JAVA設(shè)計(jì)模式-適配器模式,技術(shù)棧,# Java設(shè)計(jì)模式,java,設(shè)計(jì)模式,適配器模式

該模式只需要修改Adapter(適配器),將繼承改為對(duì)象組合。將Adapter屬性設(shè)置為Adaptee,通過Adaptee調(diào)用其方法
Adapter.java

// 對(duì)象適配器模式
// 適配器:這是適配器模式的核心。適配器類實(shí)現(xiàn)了目標(biāo)接口,并在內(nèi)部持有適配者類的一個(gè)實(shí)例。
//當(dāng)客戶端調(diào)用目標(biāo)接口的方法時(shí),適配器類會(huì)將調(diào)用委托給適配者類的相應(yīng)方法(可能需要經(jīng)過一些轉(zhuǎn)換)。
public class Adapter implements Target {
    private Adaptee adaptee;
    @Override
    public void handlePrint() {
        adaptee.print();
    }
}

執(zhí)行結(jié)果:
03-JAVA設(shè)計(jì)模式-適配器模式,技術(shù)棧,# Java設(shè)計(jì)模式,java,設(shè)計(jì)模式,適配器模式

gitee源碼

git clone https://gitee.com/dchh/JavaStudyWorkSpaces.git文章來源地址http://www.zghlxwxcb.cn/news/detail-845504.html

到了這里,關(guān)于03-JAVA設(shè)計(jì)模式-適配器模式的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Java設(shè)計(jì)模式之適配器模式詳解

    大家好,我是免費(fèi)搭建查券返利機(jī)器人賺傭金就用微賺淘客系統(tǒng)3.0的小編,也是冬天不穿秋褲,天冷也要風(fēng)度的程序猿!在今天的篇章中,我們將深入探討Java設(shè)計(jì)模式的奇妙世界,而焦點(diǎn)就是適配器模式。這種模式就像是代碼變換的藝術(shù)大師,讓不同的接口和類在項(xiàng)目中和諧

    2024年01月19日
    瀏覽(29)
  • Java與設(shè)計(jì)模式(7):適配器模式

    適配器模式是一種結(jié)構(gòu)型設(shè)計(jì)模式,它允許將一個(gè)類的接口轉(zhuǎn)換為客戶端所期望的另一個(gè)接口。適配器模式使得原本由于接口不兼容而無法一起工作的類能夠協(xié)同工作。 適配器模式通過引入一個(gè)適配器類來解決接口不兼容的問題。適配器類實(shí)現(xiàn)了客戶端所期望的目標(biāo)接口,并

    2024年02月11日
    瀏覽(23)
  • Java設(shè)計(jì)模式-結(jié)構(gòu)型-適配器模式

    Java設(shè)計(jì)模式-結(jié)構(gòu)型-適配器模式

    ? 與電源適配器相似,在適配器模式中引入了一個(gè)被稱為適配器(Adapter)的包裝類,而它所包裝的對(duì)象稱為適配者(Adaptee),即被適配的類。適配器的實(shí)現(xiàn)就是把客戶類的請(qǐng)求轉(zhuǎn)化為對(duì)適配者的相應(yīng)接口的調(diào)用。也就是說:當(dāng)客戶類調(diào)用適配器的方法時(shí),在適配器類的內(nèi)部將調(diào)用

    2024年02月20日
    瀏覽(30)
  • 【Java 設(shè)計(jì)模式】結(jié)構(gòu)型之適配器模式

    【Java 設(shè)計(jì)模式】結(jié)構(gòu)型之適配器模式

    適配器模式(Adapter Pattern)是一種結(jié)構(gòu)型設(shè)計(jì)模式, 用于將一個(gè)類的接口轉(zhuǎn)換成客戶端期望的另一個(gè)接口 。這種模式使得原本由于接口不兼容而不能一起工作的類可以一起工作。在本文中,我們將介紹 Java 中適配器模式的定義、結(jié)構(gòu)、使用場(chǎng)景以及如何在實(shí)際開發(fā)中應(yīng)用。

    2024年01月19日
    瀏覽(25)
  • 【設(shè)計(jì)模式——學(xué)習(xí)筆記】23種設(shè)計(jì)模式——適配器模式Adapter(原理講解+應(yīng)用場(chǎng)景介紹+案例介紹+Java代碼實(shí)現(xiàn))

    【設(shè)計(jì)模式——學(xué)習(xí)筆記】23種設(shè)計(jì)模式——適配器模式Adapter(原理講解+應(yīng)用場(chǎng)景介紹+案例介紹+Java代碼實(shí)現(xiàn))

    不同國(guó)家的插座不同,出國(guó)旅游充電器不能直接使用,可以通過使用 多功能轉(zhuǎn)換插頭 來輔助使用 適配器模式將某個(gè)類的接口轉(zhuǎn)換成客戶端期望的另一個(gè)接口表示,主的目的是兼容性,讓原本因接口不匹配不能一起工作的兩個(gè)類可以協(xié)同工作。其別名為包裝器(Wrapper) 適配器模

    2024年02月16日
    瀏覽(22)
  • 設(shè)計(jì)模式——適配器模式

    設(shè)計(jì)模式——適配器模式

    說起適配器其實(shí)在我們的生活中是非常常見的,比如:學(xué)校的宿舍的電壓都比較低,而有的學(xué)生想使用大功率電器,宿舍的就會(huì)跳閘,然而如果你使用一個(gè)適配器(變壓器)就可以使用了(溫馨提示宿舍使用大功率電器不太安全,容易引起火災(zāi),希望大家謹(jǐn)慎使用)。 又比如

    2024年02月12日
    瀏覽(35)
  • 設(shè)計(jì)模式-適配器模式

    設(shè)計(jì)模式-適配器模式

    在我們生活中,插座輸出的電源都是220V的,而我們手機(jī)充電需要的電壓基本都是5V的。我們不能直接用220V的電壓來給手機(jī)充電,也不能說專門有線路來提供5V的電壓。所以就有了充電器,充電器可以將220V的電壓轉(zhuǎn)為5V的電壓,這樣我們就方便太多了。 上面所說的充電器其實(shí)就

    2024年02月08日
    瀏覽(34)
  • 【設(shè)計(jì)模式】適配器模式

    【設(shè)計(jì)模式】適配器模式

    適配器模式(Adapter Pattern)是作為兩個(gè)不兼容的接口之間的橋梁。這種類型的設(shè)計(jì)模式屬于結(jié)構(gòu)型模式,它結(jié)合了兩個(gè)獨(dú)立接口的功能。 這種模式涉及到一個(gè)單一的類,該類負(fù)責(zé)加入獨(dú)立的或不兼容的接口功能。舉個(gè)真實(shí)的例子,讀卡器是作為內(nèi)存卡和筆記本之間的適配器。

    2024年02月12日
    瀏覽(32)
  • 設(shè)計(jì)模式--適配器模式

    設(shè)計(jì)模式--適配器模式

    目錄 基本介紹 工作原理 類適配模式 介紹 應(yīng)用實(shí)例介紹 類適配器模式注意事項(xiàng)和細(xì)節(jié) 對(duì)象適配模式 介紹 對(duì)象適配器模式注意事項(xiàng)和細(xì)節(jié) 接口適配器模式 介紹 適配器模式的注意事項(xiàng)和細(xì)節(jié) ?(1) 適配器模式(Adapter Pattern) 將某個(gè)類的接口轉(zhuǎn)換成客戶端期望的另一個(gè)接口表示

    2023年04月26日
    瀏覽(19)
  • 【Java面試題】設(shè)計(jì)模式之七種結(jié)構(gòu)性模式——代理模式、適配器模式、橋接模式、裝飾模式、外觀模式、享元模式、組合模式

    目錄 一、代理模式 二、適配器模式 三、橋接模式 四、裝飾模式 五、外觀模式 六、享元模式 七、組合模式 概念: 代理模式是為其他對(duì)象提供一種以代理控制對(duì)這個(gè)對(duì)象的訪問。在某些情況下,一個(gè)對(duì)象不適合或者不能直接引用另一個(gè)對(duì)象,而代理對(duì)象可以在客戶端和目標(biāo)對(duì)

    2023年04月09日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包