0
我有關於使銀行賬戶類實現安全撤回/存儲功能的問題。到目前爲止,當您向銀行賬戶類提款或存款時,它將打印日誌。無論如何,我的問題是如何實施安全性,例如你不能從銀行帳戶中扣除更多的錢。如果我不被允許在bankAccount類中實現這種安全性,並且希望將其實施爲AspectJ。使用AspectJ問題安全提取/存款
我現在有以下幾點。可以看出撤銷完成,無論if語句是真是假。因此,我必須在其他聲明中存入金額,所以它不會變成負值。這可以以更好的方式完成嗎?
pointcut checking(BankAccount ba, float x):
call(* BankAccount.withdraw(..)) && target(ba) && args(x);
before(BankAccount b, float x) : checking(b, x) {
if(b.getBalance() >= x) {
System.out.println("Account changing. $" + x + " withdrawn...");
} else {
System.out.println("Account does not have. $" + x + " to withdrawn...");
b.deposit(x);
}
}
所以這就是周圍()應該用於。由於沒有很好的文檔,因此很難理解何時使用哪些建議。 – starcorn 2011-05-15 21:20:42