裝飾設計模式,可以在原有技能的基礎上,新增技能,降低繼承所帶來的耦合性,具體細節詳見代碼:
package test1;
/**
* 裝飾設計模式
* @author pecool
*
*/
public class Test {
public static void main(String[] args) {
HeiMa heima = new HeiMa(new Student());
heima.code();
}
}
/*
* code接口
*/
interface Code{
public void code();
}
/*
* 學生從學校出來,所會技能
*/
class Student implements Code{
public void code(){
System.out.println("javase");
System.out.println("javaweb");
}
}
/*
* 黑馬培訓機構包裝后的技能
*/
class HeiMa implements Code {
private Student student;
//構造方法中傳入學生對象
public HeiMa(Student student){
this.student = student;
}
//新的技能
@Override
public void code() {
student.code();
System.out.println("oracle");
System.out.println("大數據");
System.out.println("雲計算");
}
}
