NO.35 装饰设计模式

对原有类的功能进行升级

装饰设计模式的好处

 耦合性不强,被装饰类的变化与装饰类的变化无关

例:

public static void main(String[] args) {

         Fage f = new Fage(new Student());

         f.code();

/*  结果==javase
   javaweb

   ssc

   数据库

   大数据

   ....  */

}

}

interface Coder {

          public void code();

}

class Student implements Coder {

           public void code(){

                     System.out.println("javase");

                     System.out.println("javaweb");

}

}

class Fage implements Coder {

//获取被装饰类的引用

          private Student s;

//在构造方法中传入被装饰类的对象

     public Fage(Student s) {

              this.s = s;

}

//对原有的功能进行升级

@Override

public void code() {

          s.code();

          System.out.println("ssc");

          System.out.println("数据库");

           System.out.println("大数据");

           System.out.println("....");

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 32,491评论 18 399
  • package 装饰设计模式; /*装饰设计模式 * 当想要对已有的对象进行功能增强时。 * 可以定义类,将已有对...
    大虾咪阅读 1,112评论 0 0
  • 装饰设计模式(结构型):动态地为现有的对象添加附加功能(创建子类也可以实现,但是是静态地给类增加功能,而装饰模式更...
    曲终人散Li阅读 1,819评论 0 0
  • 装饰设计模式 就是对类本身的功能进行了增强。其实我们曾经还学过一个东西,也可以对类的功能进行增强。 继承。 对手机...
    红姑娘阅读 1,400评论 0 0
  • 21.01_字符流FileReader 1.字符流是什么字符流是可以直接读写字符的IO流字符流读取字符, 就要先读...
    苦笑男神阅读 3,704评论 0 3

友情链接更多精彩内容