在调用第一种方法时触发第二种方法的调用

问题描述:

假设您的方法1不包含对method2的明确调用。在调用第一种方法时触发第二种方法的调用

做任何编程语言支持的方式来调用方法2时方法1被调用,没有任何修改的第一种方法?如果是这样,请举个简短的例子。

是的,AspectJ,一个。这将是这个样子:method1被称为

after(): call(void method1()) { 
    method2(); 
} 

也就是说,执行给定的代码(这只是调用method2整个事情被称为建议call(void method1())部分称为。切入点;切入点是一组连接点 ---可以在程序中指定可以修改行为或注入新行为的位置。相关切入点和建议可分组到方面 ---因此,名称语言

有具有类似功能的其他面向方面的语言。

在“A Reflective Model for First Class Dependencies”上撰文描述了这种依赖关系可以用的方式“即垂直于其他应用程序的问题”与元对象的帮助表达的语言。但那是一个研究原型。对元对象和元对象协议的研究导致了面向方面的编程,这种编程已经走向了工业,而且这确实可能是更实际的用法。