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

設(shè)計(jì)模式8:代理模式-靜態(tài)代理

這篇具有很好參考價值的文章主要介紹了設(shè)計(jì)模式8:代理模式-靜態(tài)代理。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

我嘗試在JDK、Android SDK和一些出名的庫中,尋找靜態(tài)代理的源碼,沒能找到。如果有讀者發(fā)現(xiàn),歡迎評論或者私信我。

靜態(tài)代理的實(shí)例

1. 售票代理

售票服務(wù)

public interface TicketService {  
    //售票  
    public void sellTicket();  
    //問詢  
    public void inquire();  
    //退票  
    public void withdraw();  
}

站點(diǎn)售票

public class Station implements TicketService {  

    @Override  
    public void sellTicket() {  
        System.out.println("\n\t售票.....\n");  
    }  

    @Override  
    public void inquire() {  
        System.out.println("\n\t問詢。。。。\n");  
    }  

    @Override  
    public void withdraw() {  
        System.out.println("\n\t退票......\n");  
    }  

}

代理網(wǎng)點(diǎn)售票文章來源地址http://www.zghlxwxcb.cn/news/detail-668663.html

public class StationProxy implements TicketService {  

    private Station station;  

    public StationProxy(Station station){  
        this.station = station;  
    }  

    @Override  
    public void sellTicket() {  

        // 1.做真正業(yè)務(wù)前,提示信息  
        this.showAlertInfo("××××您正在使用車票代售點(diǎn)進(jìn)行購票,每張票將會收取5元手續(xù)費(fèi)!××××");  
        // 2.調(diào)用真實(shí)業(yè)務(wù)邏輯  
        station.sellTicket();  
        // 3.后處理  
        this.takeHandlingFee();  
        this.showAlertInfo("××××歡迎您的光臨,再見!××××\n");  

    }  

    @Override  
    public void inquire() {  
        // 1.做真正業(yè)務(wù)前,提示信息  
        this.showAlertInfo("××××歡迎光臨本代售點(diǎn),問詢服務(wù)不會收取任何費(fèi)用,本問詢信息僅供參考,具體信息以車站真實(shí)數(shù)據(jù)為準(zhǔn)!××××");  
        // 2.調(diào)用真實(shí)邏輯  
        station.inquire();  
        // 3。后處理  
        this.showAlertInfo("××××歡迎您的光臨,再見!××××\n");  
    }  

    @Override  
    public void withdraw() {  
        // 1.真正業(yè)務(wù)前處理  
        this.showAlertInfo("××××歡迎光臨本代售點(diǎn),退票除了扣除票額的20%外,本代理處額外加收2元手續(xù)費(fèi)!××××");  
        // 2.調(diào)用真正業(yè)務(wù)邏輯  
        station.withdraw();  
        // 3.后處理  
        this.takeHandlingFee();  

    }  

    /* 
     * 展示額外信息 
     */  
    private void showAlertInfo(String info) {  
        System.out.println(info);  
    }  

    /* 
     * 收取手續(xù)費(fèi) 
     */  
    private void takeHandlingFee() {  
        System.out.println("收取手續(xù)費(fèi),打印發(fā)票。。。。。\n");  
    }  

}

2. 明星代理

public interface IStar {
	public abstract void sing(double money);
}

public class StarImpl implements IStar {
	public void sing(double money) {
		System.out.println("唱歌,收入" + money + "元");
	}
}

//經(jīng)紀(jì)人
public class StarProxy implements IStar {

    private StarImpl star = new StarImpl();

    public void sing(double money) {
        System.out.println("請先預(yù)約時間");
        System.out.println("溝通出場費(fèi)用");
        if (money < 100000) {
            System.out.println("對不起,出場費(fèi)10w萬以內(nèi)不受理");
            return;
        }
        System.out.println("經(jīng)紀(jì)人抽取了" + money * 0.2 + "元代理費(fèi)用");
        star.sing(money * 0.8);
    }
}

//測試
public class ProxyDemo {
	public static void main(String[] args) {

		StarProxy sg = new StarProxy();
		sg.sing(200000);
	}
}

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

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

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

相關(guān)文章

  • Java設(shè)計(jì)模式(十三)代理模式

    一、概述 代理模式是一種結(jié)構(gòu)型設(shè)計(jì)模式,它提供了一個代理對象,充當(dāng)被代理對象的接口,以控制對被代理對象的訪問。代理模式可以在不修改被代理對象的情況下,增加額外的功能或控制訪問方式。 二、代碼 以下是一個示例代碼,說明代理模式的使用: 在上述代碼中,

    2024年02月04日
    瀏覽(24)
  • 【Java設(shè)計(jì)模式005】代理模式

    由于一些特定原因某些對象不適合或者不能直接引用目標(biāo)對象,這時就可以使用代理模式。代理模式為目標(biāo)對象提供一個代理以控制訪問對象對目標(biāo)對象的訪問。客戶端只能直接訪問代理對象,不能直接訪問目標(biāo)對象,這么做確保了目標(biāo)對象的安全。生活中一個常見的例子就

    2024年02月12日
    瀏覽(19)
  • 設(shè)計(jì)模式-簡單工廠模式(靜態(tài)工廠模式)java實(shí)現(xiàn)

    設(shè)計(jì)模式-簡單工廠模式(靜態(tài)工廠模式)java實(shí)現(xiàn)

    簡單工廠模式根據(jù)所 提供的參數(shù) 數(shù)據(jù)返回幾個可能類中的一個類的實(shí)例。通常返回的類都有一個公共的父類和公共的方法。 ? 意圖 提供一個類,負(fù)責(zé)根據(jù)一定的條件創(chuàng)建某一具體類的實(shí)例。同時使用工廠模式也是為了隱藏創(chuàng)建對象的過程 角色及其職責(zé) (1)工廠(Creator)角色

    2024年02月13日
    瀏覽(29)
  • Java 與設(shè)計(jì)模式(13):代理模式

    代理模式是一種結(jié)構(gòu)型設(shè)計(jì)模式,用于在訪問對象時引入一個代理對象,以控制對實(shí)際對象的訪問。代理對象充當(dāng)了客戶端和實(shí)際對象之間的中介,客戶端通過代理對象間接地訪問實(shí)際對象,從而可以在訪問過程中添加額外的邏輯或控制。代理模式可以提供對實(shí)際對象的保護(hù)

    2024年02月09日
    瀏覽(19)
  • 基于Java的設(shè)計(jì)模式 - 代理模式

    代理模式是一種使用代理對象來執(zhí)行目標(biāo)對象的方法并在代理對象中增強(qiáng)目標(biāo)對象方法的一種設(shè)計(jì)模式。簡單來講就是在不修改目標(biāo)對象的基礎(chǔ)上,增強(qiáng)主業(yè)務(wù)邏輯的設(shè)計(jì)模式。 代理模式基本可分為三種 靜態(tài)代理 JDK動態(tài)代理 CGLIB動態(tài)代理 上述簡單分就是靜態(tài)和動態(tài)代理,靜

    2024年02月07日
    瀏覽(21)
  • Java設(shè)計(jì)模式---單例 工廠 代理模式

    單例模式是設(shè)計(jì)模式中的一種,屬于創(chuàng)建型模式。在軟件工程中,單例模式確保一個類只有一個實(shí)例,并提供一個全局訪問點(diǎn)。這種模式常用于那些需要頻繁實(shí)例化然后引用,且創(chuàng)建新實(shí)例的開銷較大的類,例如數(shù)據(jù)庫連接池、緩存管理等。 意圖 :保證一個類僅有一個實(shí)例

    2024年01月24日
    瀏覽(28)
  • Java設(shè)計(jì)模式中的代理模式

    Java設(shè)計(jì)模式中的代理模式 代理模式是一種結(jié)構(gòu)型設(shè)計(jì)模式,它提供了一個代理對象,以控制對其他對象的訪問。代理可以充當(dāng)中介,用于控制對真實(shí)對象的訪問。 代碼舉例演示 靜態(tài)代理: 動態(tài)代理 區(qū)別: 靜態(tài)代理: 代理類在編譯時就已經(jīng)確定,并且需要為每個被代理的

    2024年01月25日
    瀏覽(29)
  • 【Java 設(shè)計(jì)模式】結(jié)構(gòu)型之代理模式

    代理模式(Proxy Pattern)是一種結(jié)構(gòu)型設(shè)計(jì)模式, 它允許通過一個代理對象控制對其他對象的訪問 。代理模式在訪問對象時引入了一定程度的間接性,使得可以在訪問對象前后進(jìn)行一些額外的操作。在本文中,我們將深入研究Java中代理模式的定義、結(jié)構(gòu)、使用場景以及如何在

    2024年01月21日
    瀏覽(23)
  • Java設(shè)計(jì)模式之代理模式--經(jīng)紀(jì)人的工作

    Java設(shè)計(jì)模式之代理模式--經(jīng)紀(jì)人的工作

    本文主要講述 代理模式 ,文中使用通俗易懂的案例,使你更好的學(xué)習(xí)本章知識點(diǎn)并理解原理,做到有道無術(shù)。 代理模式是23種設(shè)計(jì)模式中 結(jié)構(gòu)型模式 的一種,它的核心是通過代理類來完成其他對象的訪問,降低訪問者和被訪問者的耦合度,也對功能進(jìn)行了增強(qiáng)。 每個藝人

    2024年02月09日
    瀏覽(25)
  • Java復(fù)習(xí)-20-接口(3)- 代理設(shè)計(jì)模式

    Java復(fù)習(xí)-20-接口(3)- 代理設(shè)計(jì)模式

    功能:可以幫助用戶將所有的開發(fā)注意力只集中在核心業(yè)務(wù)功能的處理上。 代理模式(Proxy Pattern)是一種結(jié)構(gòu)性模式。代理模式為一個對象提供了一個替身,以控制對這個對象的訪問。即通過代理對象訪問目標(biāo)目標(biāo)對象,可以在目標(biāo)對象實(shí)現(xiàn)的基礎(chǔ)上,增強(qiáng)額外的功能操作,即

    2024年02月09日
    瀏覽(17)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包