AspectJ的基本型別

2021-08-29 17:54:05 字數 1431 閱讀 7035

1 連線點

連線點是程度控制流中的事件,比如方法的呼叫、需要修改的域、要計算的表示式、要執行的發放的第幾行等。

下面是aspectj將要顯示為連線點的事件:

2 切入點

切入點用於選擇連線點。它扮演過濾的角色,匹配符合其定義的連線點,阻塞所有其他的連線點。

例如,pointcut call(string tostring())將匹配對名為tostring、無引數且返回值為乙個字串的發放的呼叫。

aspectj支援三種不同種類的切入點:

切入點可以命名

可以匿名

,命名切入點可以使**更高效更清晰。使用關鍵字pointcut可以宣告命名的切入點。pointcut宣告可以出現在類和aspect中,但是不能在介面中

pointcut宣告的一般形式如下:

[visibility-modifier] pointcut name(parameterlist) : pointcutexpr;

例項:pointcut leakedexception():dbexceptionhandler && !inpersistencelayer();

3 advice

切入點是匹配連線點的謂詞,而advice則是指定在這些連線點處做的動作。每個advice與乙個切入點(命名的或者匿名的)關聯,並指定在該切入點匹配的連線點之前、之後或周圍想要執行的操作。advice宣告可以包括引數,引數值可以在advice體中引用,其中引數值是由呼叫者顯示傳遞的,而advice體中的引數值是由切入點提供的。

基本的advice宣告的型別有before advice、after advice、around advice,如下所示:

before

(parameterlist) : pointcutexpr;

after

(parameterlist) :returning

: pointcutexpr;

after

(parameterlist :throwing

: pointcutexpr;

typearound

(parameterlist) : pointcutexpr;

匿名切入點示例:

after(account acc, money amount)returning :

execution(void account.*(money)) &&

args(amount) &&

this(acc)}等效

資料基本型別及對應基本型別類

基本資料型別 char 16位 byte 8位 short 16位 int 32位 long,float,double,boolean 基本資料型別對應類 character,byte,short,integer,long,float,double,boolean,string 幾乎所有型別類都有相...

討論的基本型別

整數型別,有更多的可表示的值意味著他們可以代表值的範圍更大 例如,乙個16位無符號整數可以在範圍0到65535代表65536個不同的值,而它的簽署副本將可以表示,在大多數情況下,32768和32767之間的值。注意積極的值的範圍是約一半有符號型別相比,無符號型別,由於這樣的事實,乙個16位用於標誌 ...

Python的基本型別

前邊我們講解了python的字串 整型 布林型 和 列表的一部分知識,今天帶大家學習一下剩下的列表 元組 和字典型別 1,列表 list a a b b c c for x in list print x for x,y in list print x,y enumerate 列舉 可以讓被遍歷的物...