java設計模式十三(裝飾模式)

2021-08-22 02:47:54 字數 890 閱讀 2374

裝飾模式是指在以乙個已有類作為基礎,建立乙個更多功能的裝飾類,這個裝飾類是作為現有類的乙個包裝。這點有點像乙個子類繼承乙個父類,但比繼承更靈活。

假設我們有個學生類(student),學生的職責是學習,而值日生除了學習還有一些值日的工作(如檫黑板)。在這種情況下,學生可以作為乙個基類,而值日生就是乙個裝飾類,具體**實現如下:

1.建立學生介面

public

inte***ce istudent

2.創適學生類

public

class

student

implements

istudent

}

3.建立學生抽象裝飾類。

public

abstract

class

studentdecorator

implements

istudent

@override

public

void

study()

}

4.建立值日生類

public

class

dutystudent

extends

studentdecorator

@override

public

void

study()

private

void

onduty()

}

5.模式呼叫

public

class test

}

Java 設計模式 裝飾模式

看了大話設計模式此章節多遍才稍微有點理解,特此記錄。深入淺出,通俗易懂。情景 小菜要去見未來女友 嬌嬌,來個服裝打扮的設計。第一彈 客戶端 public static void main string args 問題來了,嬌嬌喜歡超人,小菜這次想穿的是超人,咋辦?直接修改小菜的類嗎?這就違背了開閉原...

java設計模式 裝飾模式

什麼是裝飾模式 裝飾模式就是動態的為乙個物件新增新的功能,它是一種代替繼承的技術,毋須通過繼承增加子類就能拓展物件功能的模式。開發中應用場景 1.io流中,設計的輸入和輸出 2.servlet api提供的乙個re quest物件的decrator模式的預設實現類httpservletrequest...

Java設計模式 裝飾模式

目錄 裝飾模式 定義 通用類圖 角色分類 抽象構件 component 具體構件 concretecomponent 裝飾角色 docorator 具體裝飾角色 concretedecoratora和b 裝飾模式與類繼承的區別 裝飾模式的特點 案例分析 輸出結果如圖所示 分析1 分析2 分析3 分析...