有没有办法使用注释用于运行函数之前当前调用的函数,是这样的:如何在使用注释的当前函数之前运行函数?
public void doSomethingEarlier() {
}
@DoSomethingEarlier
public void doSomething() {
}
所以我想打电话给doSomethin()函数,并执行该功能之前我想自动运行doSomethingEarlier()函数。
有没有办法使用注释用于运行函数之前当前调用的函数,是这样的:如何在使用注释的当前函数之前运行函数?
public void doSomethingEarlier() {
}
@DoSomethingEarlier
public void doSomething() {
}
所以我想打电话给doSomethin()函数,并执行该功能之前我想自动运行doSomethingEarlier()函数。
请参阅Spring Aspect Oriented Programming。
Java不会为你做这件事。其他人:您或某个库:必须查看注释并调整呼叫过程。
是的,你可以使用注解。您必须创建自己的@DoSomethingEarlier
注释(具有运行时保留),并且必须为自己的注释处理器处理器编码。这不是一个简单的命题,你可能想看看像AOP或动态代理其他替代品(这可能不是容易的事。)
这种情况很容易...
public void doSomethingEarlier() {
}
public void doSomething() {
doSomethingEarlier();
}
你必须定义注释并编写代理代码,不是吗? – bmargulies 2010-04-08 20:44:15
是(15个字符)。 – Bozho 2010-04-08 20:48:59