【Java设计模式】装饰模式
生活随笔
收集整理的這篇文章主要介紹了
【Java设计模式】装饰模式
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
(轉(zhuǎn)載請(qǐng)注明出處:http://blog.csdn.net/buptgshengod)
1.背景
??????? 裝飾模式就是為一個(gè)對(duì)象增添新的功能,在對(duì)象的基礎(chǔ)上修飾。本文實(shí)現(xiàn)的功能是,對(duì)象a有方法show輸出“This is a test”,經(jīng)過(guò)裝飾后輸出“This is a test for decorate”。實(shí)質(zhì)就是多個(gè)類(lèi)通用一個(gè)接口,然后將要修飾的類(lèi)定義在修飾類(lèi)的構(gòu)造函數(shù)里。
2.代碼實(shí)現(xiàn)
(1)首先建立通用接口,里面有方法show()
package Decorate;public interface Component {public void show(); }(2)建立一個(gè)類(lèi)實(shí)現(xiàn)show
package Decorate;public class Concrete implements Component{public void show(){System.out.print("This is a test");} }(3)建立decorate的實(shí)現(xiàn)類(lèi)
package Decorate;public class Decorate implements Component {Component component;public Decorate(Component c){component=c;}public void show(){component.show();System.out.print(" for decorate");} }
(4)客戶(hù)端使用
package Decorate;public class Client {public static void main(String[] args){Component a=new Concrete();Component b=new Decorate(a);a.show();System.out.println();b.show();}}
結(jié)果
總結(jié)
以上是生活随笔為你收集整理的【Java设计模式】装饰模式的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 【Java设计模式】策略模式
- 下一篇: Java多线程之线程间协作 notify