今天刚看到java的装饰者模式,整理一下。
interface Person{
public void doSomething();
}
class Student implements Person{
public void doSomething(){
System.out.println("学习");
}
}
class Teacher implements Person{
public void doSomething(){
System.out.println("上课");
}
}
class Person1 implements Person{
private Person person;
public Person1(Person person){
this.person = person;
}
public void doSomething(){
System.out.println("今天天气不错");
person.doSomething();
}
}
class Test{
public static void main(String args[]){
Student student = new Student();
Person1 p1 = new Person1(student);
p1.doSomething();
Teacher teacher = new Teacher();
Person1 p2 = new Person1(teacher);
p2.doSomething();
}
}