我目前正在研究 AOP 及其重要部分,即Advice、Pointcuts和Join Points。我从这个链接中 阅读了关于什么是建议和切入点的非常易于理解的解释。面向方面编程与面向对象编程
但是,我很难理解什么是加入点。根据我的阅读,连接点是程序结构中明确定义的位置,方面可以在其建议代码中编织。
但是,当谈到真正的例子时,我找不到任何好的例子来理解连接点的例子。
从上面链接中的示例中可以看出,如果 Advice 和 Poincuts 是下面写的,那么我们在哪里定义连接点?
经典方法:
void set...(...) {
:
:
Display.update();
}
建议:
after() : set() {
Display.update();
}
切入点:
pointcut set() : execution(* set*(*) ) && this(MyGraphicsClass) && within(com.company.*);