最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java實(shí)現(xiàn)多線(xiàn)程中的靜態(tài)代理模式

 更新時(shí)間:2021年05月18日 15:53:36   作者:大大丁大大  
靜態(tài)代理屬于設(shè)計(jì)模式中的代理模式。這篇文章主要介紹了Java實(shí)現(xiàn)多線(xiàn)程中的靜態(tài)代理模式,詳細(xì)的介紹了靜態(tài)代理的使用,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

前言

代理模式是一種設(shè)計(jì)模式,提供了對(duì)目標(biāo)對(duì)象額外的訪問(wèn)方式,即通過(guò)代理對(duì)象訪問(wèn)目標(biāo)對(duì)象,這樣可以在不修改原目標(biāo)對(duì)象的前提下,提供額外的功能操作,擴(kuò)展目標(biāo)對(duì)象的功能。

簡(jiǎn)言之,代理模式就是設(shè)置一個(gè)中間代理來(lái)控制訪問(wèn)原目標(biāo)對(duì)象,以達(dá)到增強(qiáng)原對(duì)象的功能和簡(jiǎn)化訪問(wèn)方式。

靜態(tài)代理屬于設(shè)計(jì)模式中的代理模式。反之則有動(dòng)態(tài)代理,本篇文章不展開(kāi)講,有興趣的可自行谷歌研究研究。

其實(shí)繼承Thread也屬于靜態(tài)代理的一種,所以在這里學(xué)習(xí)靜態(tài)代理有助于我們學(xué)習(xí)多線(xiàn)程。

靜態(tài)代理

優(yōu)點(diǎn):可以在不修改目標(biāo)對(duì)象的前提下擴(kuò)展目標(biāo)對(duì)象的功能。

缺點(diǎn):

  • 冗余。由于代理對(duì)象要實(shí)現(xiàn)與目標(biāo)對(duì)象一致的接口,會(huì)產(chǎn)生過(guò)多的代理類(lèi)。
  • 不易維護(hù)。一旦接口增加方法,目標(biāo)對(duì)象與代理對(duì)象都要進(jìn)行修改。

一、靜態(tài)代理

實(shí)際案例:買(mǎi)房

買(mǎi)房人 我
買(mǎi)房辦理人 中介
共同的行為 買(mǎi)房
代碼實(shí)現(xiàn)案例:

class MyI implements BuyHouse {

    //對(duì)我來(lái)說(shuō),我只需負(fù)責(zé)拿錢(qián),簽字即可
    @Override
    public void Buy() {
        System.out.println("一百萬(wàn),簽合同,房子是我的了!");
    }
}

class Agent implements BuyHouse{
    private BuyHouse buyHouse;
    
    public Agent(BuyHouse buyHouse){
        this.buyHouse = buyHouse;
    }

    //先幫我準(zhǔn)備合同等材料
    public void work1(){
        System.out.println("準(zhǔn)備合同等材料~");
    }
    //帶我去房管局辦理手續(xù)
    public void work2(){
        System.out.println("帶著客戶(hù)去辦手續(xù)~");
    }

    //中介收了我的錢(qián),他得幫我準(zhǔn)備購(gòu)房材料,帶著我跑購(gòu)房流程等等
    @Override
    public void Buy() {
        work1();
        work2();
        //客戶(hù)買(mǎi)房
        buyHouse.Buy();
    }
}

執(zhí)行結(jié)果如下:

結(jié)論:

本質(zhì)上還是相當(dāng)于把業(yè)務(wù)分開(kāi),降低程序的耦合性,不管是中介還是我,最終的目的都是買(mǎi)房,我只關(guān)注于買(mǎi)房的業(yè)務(wù),其他業(yè)務(wù)無(wú)需管,而中介需要準(zhǔn)備材料,準(zhǔn)備合同,帶我去房管局等一系列流程。

到此這篇關(guān)于Java實(shí)現(xiàn)多線(xiàn)程中的靜態(tài)代理模式的文章就介紹到這了,更多相關(guān)Java 多線(xiàn)程靜態(tài)代理內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家! 

相關(guān)文章

  • SpringBoot集成Jasypt敏感信息加密的操作方法

    SpringBoot集成Jasypt敏感信息加密的操作方法

    這篇文章主要介紹了SpringBoot集成Jasypt加密敏感信息,包括敏感信息加密的作用,項(xiàng)目集成Jasypt方式詳解,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-05-05
  • 淺談HashMap、HashTable的key和value是否可為null

    淺談HashMap、HashTable的key和value是否可為null

    這篇文章主要介紹了淺談HashMap、HashTable的key和value是否可為null,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-09-09
  • Java線(xiàn)程池必知必會(huì)知識(shí)點(diǎn)總結(jié)

    Java線(xiàn)程池必知必會(huì)知識(shí)點(diǎn)總結(jié)

    這篇文章主要給大家介紹了關(guān)于Java線(xiàn)程池必知必會(huì)知識(shí)點(diǎn)的相關(guān)資料,文中通過(guò)圖文以及實(shí)例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2022-02-02
  • java編程約瑟夫問(wèn)題實(shí)例分析

    java編程約瑟夫問(wèn)題實(shí)例分析

    這篇文章主要介紹了java編程約瑟夫問(wèn)題實(shí)例分析,具有一定借鑒價(jià)值,需要的朋友可以參考下。
    2017-12-12
  • Java中final關(guān)鍵字和final的四種用法實(shí)例

    Java中final關(guān)鍵字和final的四種用法實(shí)例

    final關(guān)鍵字代表最終的、不可改變的,下面這篇文章主要給大家介紹了關(guān)于Java中final關(guān)鍵字和final的四種用法實(shí)例,文中通過(guò)圖文以及實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-02-02
  • JVM類(lèi)加載器之ClassLoader的使用詳解

    JVM類(lèi)加載器之ClassLoader的使用詳解

    類(lèi)加載器負(fù)責(zé)讀取Java字節(jié)代碼,并轉(zhuǎn)換成java.lang.Class類(lèi)的一個(gè)實(shí)例的代碼模塊。本文主要和大家聊聊JVM類(lèi)加載器ClassLoader的使用,需要的可以了解一下
    2022-10-10
  • 接口簽名怎么用Java實(shí)現(xiàn)

    接口簽名怎么用Java實(shí)現(xiàn)

    今天帶大家學(xué)習(xí)java的相關(guān)知識(shí),文章圍繞怎么用Java實(shí)現(xiàn)接口簽名展開(kāi),文中有非常詳細(xì)的代碼示例及介紹,需要的朋友可以參考下
    2021-06-06
  • 解決CollectionUtils.isNotEmpty()不存在的問(wèn)題

    解決CollectionUtils.isNotEmpty()不存在的問(wèn)題

    這篇文章主要介紹了解決CollectionUtils.isNotEmpty()不存在的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • Java實(shí)現(xiàn)循環(huán)體的過(guò)濾器的方法

    Java實(shí)現(xiàn)循環(huán)體的過(guò)濾器的方法

    這篇文章主要介紹了Java實(shí)現(xiàn)循環(huán)體的過(guò)濾器的方法,需要的朋友可以參考下
    2014-02-02
  • 一文帶你了解Spring中@Enable開(kāi)頭注解的使用

    一文帶你了解Spring中@Enable開(kāi)頭注解的使用

    前面的文章給大家介紹?Spring?的重試機(jī)制的時(shí)候有提到過(guò)?Spring?有很多?@Enable?開(kāi)頭的注解,平時(shí)在使用的時(shí)候也沒(méi)有注意過(guò)為什么會(huì)有這些注解,今天就給大家介紹一下
    2022-09-09

最新評(píng)論

新乡市| 三穗县| 永登县| 漾濞| 通许县| 湘西| 逊克县| 四川省| 博湖县| 巴林左旗| 子洲县| 丹阳市| 桂阳县| 增城市| 屏山县| 甘洛县| 麻栗坡县| 尉犁县| 三亚市| 勐海县| 稻城县| 临朐县| 龙游县| 福建省| 电白县| 通许县| 黄浦区| 英超| 镇沅| 江华| 青川县| 宁远县| 北京市| 镇远县| 京山县| 抚顺县| 泽普县| 台前县| 买车| 九台市| 丹凤县|