您的位置:首页 > 编程语言 > Java开发

装饰设计模式 Java版

2015-08-18 17:12 483 查看
package com.lcj.zhuangshi;
/*
1.装饰类和被装饰类实现同一接口
2.装饰类传入需要装饰的对象,在需要装饰的地方做更改,不需要装饰的地方使用对象调用原功能
*/
interface 动物{
public void 吃();
public void 叫();
}
public class zhuangshi {

public static class 狗 implements 动物{
public void 吃(){
System.out.println("咳咳咳咳咳....");
}

public void 叫(){
System.out.println("汪汪汪....");

}
}
public static void main(String [] args){

狗 dog = new 狗();
动物 ani = new 装饰狗(dog);

ani.叫();
ani.吃();
}
}

class 装饰狗  implements 动物{
private 动物  ani = null;
public 装饰狗(动物 ani) {
this.ani = ani;
}
@Override
public void 吃() {
ani.吃();
}

@Override
public void 叫() {
System.out.println("装饰以后 咳咳咳咳咳....");

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: