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

責(zé)任鏈模式(Chain of Responsibility)

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

責(zé)任鏈模式是對(duì)象的行為模式。使多個(gè)對(duì)象都有機(jī)會(huì)處理請(qǐng)求,從而避免請(qǐng)求的發(fā)送者和接受者直接的耦合關(guān)系。
public abstract class Handler {
    protected Handler successor;
    public abstract void handlerRequest(String condition);

    protected Handler getSuccessor() {
        return successor;
    }

    public void setSuccessor(Handler successor) {
        this.successor = successor;
    }
}

public class ConcreteHandler1 extends Handler{
    @Override
    public void handlerRequest(String condition) {
        // TODO Auto-generated method stub
        // 如果是自己的責(zé)任,就自己處理,負(fù)責(zé)傳給下家處理
        if(condition.equals("ConcreteHandler1")){
            System.out.println( "ConcreteHandler1 handled ");
            return ;
        }else{
            System.out.println( "ConcreteHandler1 passed ");
            getSuccessor().handlerRequest(condition);
        }
}

public class ConcreteHandler2 extends Handler{
    @Override
    public void handlerRequest(String condition) {
        // TODO Auto-generated method stub
        // 如果是自己的責(zé)任,就自己處理,負(fù)責(zé)傳給下家處理
        if(condition.equals("ConcreteHandler2")){
            System.out.println( "ConcreteHandler2 handled ");
            return ;
        }else{
            System.out.println( "ConcreteHandler2 passed ");
            getSuccessor().handlerRequest(condition);
        }
    }
}

public class ConcreteHandlerN extends Handler{
    @Override
    public void handlerRequest(String condition) {
        // TODO Auto-generated method stub
        System.out.println( "ConcreteHandlerN handled");
    }
}

//測(cè)試
Handler handler1 = new ConcreteHandler1();
Handler handler2 = new ConcreteHandler2();
Handler handlern = new ConcreteHandlerN();
//鏈起來(lái)
handler1.setSuccessor(handler2);
handler2.setSuccessor(handlern);
//假設(shè)這個(gè)請(qǐng)求是ConcreteHandler2的責(zé)任
handler1.handlerRequest("ConcreteHandler2");

public static void main(String[] args) {
	// TODO Auto-generated method stub
	Handler handler1 = new ConcreteHandler1();
	Handler handler2 = new ConcreteHandler2();
	Handler handlern = new ConcreteHandlerN();		
	//鏈起來(lái)
	handler1.setSuccessor(handler2);
	handler2.setSuccessor(handlern);		
	//假設(shè)這個(gè)請(qǐng)求是ConcreteHandler2的責(zé)任
	handler1.handlerRequest("ConcreteHandler2");
}

文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-744469.html

到了這里,關(guān)于責(zé)任鏈模式(Chain of Responsibility)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(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ì)模式—責(zé)任鏈模式(Chin of Responsibility)

    Java設(shè)計(jì)模式—責(zé)任鏈模式(Chin of Responsibility)

    目錄 前言 一、責(zé)任鏈模式的簡(jiǎn)介 二、責(zé)任鏈模式的概念 三、責(zé)任鏈模式的作用 四、責(zé)任鏈模式的優(yōu)、缺點(diǎn) 1.責(zé)任鏈模式的優(yōu)點(diǎn) 2.責(zé)任鏈模式的缺點(diǎn) 五、責(zé)任鏈模式的應(yīng)用場(chǎng)景 六、代碼案例 UML類圖 ?1.定義一個(gè)請(qǐng)求枚舉類 ?2.定義一個(gè)請(qǐng)求類 3.定義一個(gè)抽象處理接口 4、定

    2024年02月08日
    瀏覽(28)
  • 設(shè)計(jì)模式—職責(zé)鏈模式(Chain of Responsibility)

    設(shè)計(jì)模式—職責(zé)鏈模式(Chain of Responsibility)

    目錄 思維導(dǎo)圖 什么是職責(zé)鏈模式? 有什么優(yōu)點(diǎn)呢? 有什么缺點(diǎn)呢? 什么場(chǎng)景使用呢? 代碼展示 ①、職責(zé)鏈模式 ②、加薪代碼重構(gòu) 使多個(gè)對(duì)象都有機(jī)會(huì)處理請(qǐng)求,從而避免請(qǐng)求的發(fā)送者和接收者之間的耦合關(guān)系。將這個(gè)對(duì)象連成一條鏈,并沿著這條鏈傳遞該請(qǐng)求,直到有

    2024年02月10日
    瀏覽(37)
  • 設(shè)計(jì)模式--職責(zé)鏈模式(Chain of Responsibility Pattern)

    職責(zé)鏈模式(Chain of Responsibility Pattern)是一種行為設(shè)計(jì)模式,它為請(qǐng)求創(chuàng)建了一個(gè)接收者對(duì)象的鏈。 這種模式給予請(qǐng)求的類型,對(duì)請(qǐng)求的發(fā)送者和接收者進(jìn)行解耦。這種類型的設(shè)計(jì)模式屬于行為型模式。 在職責(zé)鏈模式中,通常每個(gè)接收者都包含對(duì)另一個(gè)接收者的引用。如果

    2024年02月20日
    瀏覽(21)
  • 責(zé)任鏈模式(Chain of Responsibility)

    責(zé)任鏈模式(Chain of Responsibility)

    命令鏈(Chain of Command)。 責(zé)任鏈?zhǔn)且环N行為設(shè)計(jì)模式 , 允許你將請(qǐng)求沿著處理者鏈進(jìn)行發(fā)送。收到請(qǐng)求后,每個(gè)處理者均可對(duì)請(qǐng)求進(jìn)行處理,或?qū)⑵鋫鬟f給鏈上的下個(gè)處理者 。 1. 問(wèn)題 假如你正在開發(fā)一個(gè)在線訂購(gòu)系統(tǒng)。你希望對(duì)系統(tǒng)訪問(wèn)進(jìn)行限制, 只允許認(rèn)證用戶創(chuàng)建

    2024年02月11日
    瀏覽(24)
  • 責(zé)任鏈模式(Chain of Responsibility)

    責(zé)任鏈模式是對(duì)象的行為模式。使多個(gè)對(duì)象都有機(jī)會(huì)處理請(qǐng)求,從而避免請(qǐng)求的發(fā)送者和接受者直接的耦合關(guān)系。

    2024年02月05日
    瀏覽(29)
  • Java設(shè)計(jì)模式——責(zé)任鏈模式

    當(dāng)一個(gè)請(qǐng)求需要在多個(gè)對(duì)象之間傳遞,每個(gè)對(duì)象都可能處理該請(qǐng)求或?qū)⑵鋫鬟f給下一個(gè)對(duì)象。在這種情況下,需要避免將發(fā)送者與接收者之間的耦合,以及確定請(qǐng)求的處理方式。此時(shí)可使用責(zé)任鏈模式,它的優(yōu)點(diǎn)有降低耦合度(無(wú)需關(guān)心哪個(gè)對(duì)象會(huì)處理請(qǐng)求),靈活性(可以

    2024年02月21日
    瀏覽(19)
  • Java設(shè)計(jì)模式-責(zé)任鏈模式

    責(zé)任鏈模式,有的地方也會(huì)叫職責(zé)鏈模式。它指的是,為請(qǐng)求者和被請(qǐng)求者之間創(chuàng)建一條對(duì)象處理鏈路,避免請(qǐng)求發(fā)送者與接受者耦合在一起。 在責(zé)任鏈模式里,很多對(duì)象由每一個(gè)對(duì)象對(duì)其下家的引用而連接起來(lái)形成一條鏈。請(qǐng)求在這個(gè)鏈上傳遞,直到鏈上的某一個(gè)對(duì)象決定

    2024年02月15日
    瀏覽(23)
  • java設(shè)計(jì)模式(十五)責(zé)任鏈模式

    java設(shè)計(jì)模式(十五)責(zé)任鏈模式

    責(zé)任鏈模式(Chain of Responsibility) 使多個(gè)對(duì)象都有機(jī)會(huì)處理請(qǐng)求,從而避免請(qǐng)求的發(fā)送者和接受者之間的耦合關(guān)系。將這些對(duì)象連成一條鏈,并沿著這條鏈傳遞該請(qǐng)求,直到有對(duì)象能夠處理它。 抽象處理類: 主要包含一個(gè)指向下一處理類的成員變量 nextHandler 和一個(gè)處理請(qǐng)求的方

    2024年02月08日
    瀏覽(22)
  • 設(shè)計(jì)模式之責(zé)任鏈模式【Java實(shí)現(xiàn)】

    設(shè)計(jì)模式之責(zé)任鏈模式【Java實(shí)現(xiàn)】

    責(zé)任鏈(chain of Resposibility) 模式:為了避免請(qǐng)求發(fā)送者與多個(gè)請(qǐng)求處理者耦合在一起,于是將所有請(qǐng)求的處理者 通過(guò)前一對(duì)象記住其下一個(gè)對(duì)象的引用而連成一條鏈 ;當(dāng)有請(qǐng)求發(fā)生時(shí),可將請(qǐng)求沿著這條鏈傳遞,直到有對(duì)象處理它位置。屬于對(duì)象行為型模式。 抽象處理者

    2024年02月12日
    瀏覽(21)
  • 【Java 設(shè)計(jì)模式】行為型之責(zé)任鏈模式

    責(zé)任鏈模式(Chain of Responsibility Pattern)是一種行為型設(shè)計(jì)模式,用于將請(qǐng)求發(fā)送者和接收者解耦,使得多個(gè)對(duì)象都有機(jī)會(huì)處理請(qǐng)求。責(zé)任鏈模式通過(guò)創(chuàng)建一個(gè)處理請(qǐng)求的鏈,將請(qǐng)求沿著鏈傳遞,直到有一個(gè)對(duì)象能夠處理為止。在本文中,我們將深入研究Java中責(zé)任鏈模式的定

    2024年01月24日
    瀏覽(23)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包