有沒有辦法使用註釋用於運行函數之前當前調用的函數,是這樣的:如何在使用註釋的當前函數之前運行函數?
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