装饰设计模式讲解_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > 装饰设计模式讲解

装饰设计模式讲解

 2014/5/7 4:10:16  麦田的设计者  程序员俱乐部  我要评论(0)
  • 摘要:装饰设计模式讲解当想要对已有的对象进行功能增强时,可以定义类,将已有的对象传入(构造器),基于自己已有的功能,并提供加强功能,那么自定义的类称为装饰类。举一个现实的例子。ClassPerson/*以前的人吃饭*/{publicvoidchifan(){System.out.println("吃饭");}}ClassSuperPerson/*现在的人吃饭,相比于以前的人功能增强*/{privatePersonp;SuperPerson(Personp){this.p=p;
  • 标签:模式 设计 设计模式

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?装饰设计模式讲解

? 当想要对已有的对象进行功能增强时,可以定义类,将已有的对象传入(构造器),基于自己已有的功能,并提供加强功能,那么自定义的类称为装饰类。

举一个现实的例子

? ?Class Person/*以前的人吃饭*/{

? ? public void chifan()

? ? {

? ? ? ?System.out.println("吃饭");

? ? ?}

}

Class SuperPerson/*现在的人吃饭,相比于以前的人功能增强*/

{

? ?private Person p;

? SuperPerson(Person p)

? ?{

? ? ?this.p=p;

? ? }

? ?public void superChifan()

? ?{

? ?System.out.println("开胃菜");

?p.chifan();

??System.out.println("甜点");

System.out.println("抽一根烟");

? ?}

}

Class PersonDemo/* 定义主类*/

? {

? ? ? public static void main( String[]args)

? ? ?{

? ? ? Person p=new Person();

? ? ?p.chifan();

? ? ?SuperPerson sp=new SuperPerson(p);

? ? sp.superChifan();/*实现Superperson的方法*/

? ? ?}

? }

回归到Java里BufferReader类里的readline()方法就是父类Reader类方法read()的加强(readline()本质上也是从硬盘里一个个的读取字符,在遇到回车后再将前面输出的字符一起输出)。自己慢慢领悟吧,

发表评论
用户名: 匿名