logHandler调用的是move方法,但为什么timeHandler调用的也是move方法
logHandler调用invoke调用的是move方法,但为什么timeHandler也是调用move方法,这里已经隔了一层了。
public static void main(String[] args) {
Moveable car = new Car();
InvocationHandler timeHandler = new TimeHandler(car);
Class<?> cls = car.getClass();
/**
* loader:类加载器<br>
* interfaces:实现接口<br>
* h InvocationHandler<br>
*/
Moveable timeCar = (Moveable) Proxy.newProxyInstance(
cls.getClassLoader(), cls.getInterfaces(), timeHandler);
InvocationHandler logHandler = new LogHandler(timeCar);
Moveable logCar = (Moveable) Proxy.newProxyInstance(
cls.getClassLoader(), cls.getInterfaces(), logHandler);
logCar.move();
}