NO.35 装饰设计模式

2017-08-30  本文已影响0人  WXFA

对原有类的功能进行升级

装饰设计模式的好处

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

例:

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("....");

}

上一篇 下一篇

猜你喜欢

热点阅读