增强类与被增强类实现(implements)相同的接口;
增强类中获取被增强类的引用。
// 共同的接口:1
2
3interface IPerson{
public void run();
}
// 被增强的类1
2
3
4
5class Person implements IPerson{
public void run(){
System.out.println("跑...");
}
}
// 增强的类1
2
3
4
5
6
7
8
9
10
11
12
13class SuperPerson implements IPerson{
private IPerson p; // 用于接收Person对象
public SuperPerson(IPerson p){ // 传入一个Person对象
this.p = p;
}
public void run(){
p.run();
System.out.println("超人跑...");
}
}