装饰设计模式的装饰类为什么还要去实现被装饰类实现的接口呢?
不实现装饰类也能正常调用和实现装饰了的方法啊。
public class Test {
public static void main(String[] args) {
HeiMaStudent s = new HeiMaStudent(new Student());
s.code();
}
}
interface Coder {
public abstract void code();
}
class Student implements Coder {
@Override
public void code() {
System.out.println("java");
}
}
class HeiMaStudent implements Coder { // 今天学了装饰设计模式,,,装饰类为什么还要实现这个接口呢?不实现也能调用
private Student s;
public HeiMaStudent(Student s) {
super();
this.s = s;
}
@Override
public void code() {
s.code();
System.out.println("android");
}
}
|