博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
设计模式Decrator
阅读量:6036 次
发布时间:2019-06-20

本文共 1445 字,大约阅读时间需要 4 分钟。

hot3.png

public class Decorator {

public static void main(String agrs[]) {                    Greeting1 g = new AfterGreeting(new BeforeGreeting(new Greeting1Impl()));                    g.sayHello("king");        }

}

interface Greeting1 {

void sayHello(String name);

}

class Greeting1Impl implements Greeting1 {

public void sayHello(String name) {                    System.out.println("hello " + name);        }

}

abstract class DecoratorGreeting implements Greeting1 {

Greeting1 greeting1;        public DecoratorGreeting(Greeting1 g) {                    greeting1 = g;        }        @Override        public void sayHello(String name) {                    greeting1.sayHello(name);        }

}

class BeforeGreeting extends DecoratorGreeting {

public BeforeGreeting(Greeting1 g) {                    super(g);        }        @Override        public void sayHello(String name) {                    before();                    super.sayHello(name);        }        private void before() {                    System.out.println("before...");        }

}

class AfterGreeting extends DecoratorGreeting {

public AfterGreeting(Greeting1 g) {                    super(g);        }        @Override        public void sayHello(String name) {                    super.sayHello(name);                    after();        }        private void after() {                    System.out.println("after...");        }

}

转载于:https://my.oschina.net/kingwjb/blog/261862

你可能感兴趣的文章
centos7部署redis
查看>>
怎样做网站优化才能更有效的吸引蜘蛛来访?
查看>>
带搜索的下拉框(select2插件)
查看>>
Linux日常运维--5
查看>>
Java基础之多线程框架(二)
查看>>
51.php-fpm的pool 慢日志 open_basedir 进程管理
查看>>
Visual Paradigm 教程[UML]:如何在序列图中应用消息编号?
查看>>
线程组之间的JMeter传递变量
查看>>
Mycat - 实现数据库的读写分离与高可用
查看>>
【更新】Infragistics Ultimate UI for WPF v18.2(三):Excel引擎
查看>>
UniDAC使用教程(五):数据加密
查看>>
设计模式简单入门(下)
查看>>
swing 把对话框保存为图片
查看>>
MySQL中MAX函数与Group By一起使用的注意事项
查看>>
OSChina 周五乱弹 —— 三口气印度史(3)
查看>>
前端那些事之ES6
查看>>
svn checkout的时候, 不要将以此目录为工程的netbeans等ide打开
查看>>
18位身份证号码规则及js验证
查看>>
从根开始的DNS服务器架构,让整个互联网掌控于你的手中
查看>>
如何取得当前插入记录的ID
查看>>