java 设计模式 装饰模式_java中的装饰设计模式

装饰设计模式也成为包装模式,属于结构性设计模式。该模式也是继承关系的替代方法之一,对比继承的优点是装饰模式的低耦合性,被装饰类的变化与装饰类无关。

装饰设计模式,就是动态的给对象添加一些额外的功能。比如一个毛坯房,可以装修成不同的风格以达到不同的功能,如中式、欧式等。

java IO中很多用到装饰设计模式,比如BufferedReader、BufferedWriter

步骤:

获取被装饰类的引用

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

对原有的功能进行升级

public class Demo {

public static void main(String[] args){

SuperStudent superStudent = new SuperStudent(new Student ());

superStudent.code();

}

}

interface Coder{

public void code();

}

class Student implements Coder{

@Overvide

public void code(){

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

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

}

}

class SuperStudent implements Coder{

//获取被装饰类的引用

private Student s;

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

public SuperStudent (Student s){

this.s=s;

}

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

@Overvide

public void code(){

s.code();

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

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

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值