切面向けプログラミングAOP

887 ワード

Androidフェースプログラミング(AOP)
AndroidフェースプログラミングAOP向け詳細
AndroidのAOPを深く理解する
 
 
接点式の構成は次のとおりです.execution(? ? () ?)
戻りタイプ、メソッド名、パラメータ以外はオプションです.修飾子はpublic、private、protected、異常はNullPointExceptionなどを指す.
ワイルドカード
@AspectJは3種類のワイルドカードをサポートしています.
  • *:任意の文字に一致しますが、コンテキスト内の要素
  • のみに一致します.
  • ..:任意の文字をマッチングし、コンテキスト内の複数の要素をマッチングすることができるが、クラスを表す場合は*と組み合わせて使用する必要があり、パラメータを表す場合は
  • を単独で使用する.
  • +:指定されたクラスにタイプで一致するすべてのクラスを表し、com.lake.Car+のようなクラス名の後に続く必要があります.指定されたクラスのすべてのクラスを継承または拡張するとともに、指定されたクラス自体
  • も含まれます.
    @AspectJ関数は、ワイルドカードがサポートされているかどうかとサポートされている程度によって、3種類に分けられます.
  • はすべてのワイルドカードをサポートします:execution()、within()
  • は、+ワイルドカードのみをサポートします:args()、this()、target()
  • ワイルドカードはサポートされていません:@args(),@within(),@target(),@annotation()
  •