注意:
コンセプト:プロセスの説明。コンピュータに表示します
注:プログラムのテキスト記述。プログラマのへ
定義:
注釈(アノテーション)、また、メタデータとして知られています。コードレベルを説明してください。これは、JDK1.5の特徴であり、後のクラス、インタフェース、列挙が同じレベルにある導入します。これは、パッケージ、クラス、フィールド、メソッド、ローカル変数、パラメータの前に宣言することができ、これらの要素のための方法のように、コメントを説明します。
-
コンセプトの説明:
-
JDK1.5後の新機能
-
プロセスの説明
-
使用注:名前注釈@
-
-
役割カテゴリ:
①書面:注釈コード識別文書生成DOC [ドキュメント]によって生成された文書
②コード分析:リフレクションを使用してコードに注釈を付けることにより、コードの解析[ID]
③コンパイルのチェック:コンパイラは、基本的なチェック[オーバーライド]をコンパイルできるように、識別コードに注釈を付けることにより、
-
JDKは、音符の数を事前に定義しました
-
@Override:親クラスから継承されたかどうかを標識した注釈を検出するための方法(インターフェース)
-
@deprecated:このコメントはマークされたコンテンツ、時代遅れの表現
-
@SuppressWarnings:抑制の警告
* 一般传递参数all @SuppressWarnings("all")
-
カスタム注釈
-
フォーマット:
元注解 public @interface 注解名称{ 属性列表; }
-
エッセンス:注釈はその継承デフォルトの注釈インタフェース本質的インターフェースであります
* public interface MyAnno extends java.lang.annotation.Annotation {}
-
プロパティ:抽象インタフェース・メソッド
-
要件:
-
戻り値の型属性は以下の値を持っています
-
基本データ型
-
ストリング
-
列挙
-
コメント
-
配列の複数のタイプ
-
-
あなたがプロパティの割り当てを与える必要を使用するときに、プロパティが定義されています
-
注釈を使用したときに、プロパティの定義は、属性のデフォルトの初期値にデフォルトのキーワードを使用する場合は、割り当てた属性はできません。
-
そこに割り当て属性にのみ必要があり、その値は、プロパティの名前である場合、値は、直接定義された値を省略することができます。
-
{値}のパッケージを使用してアレイを割り当てます。アレイは一つの値だけを有する場合、それは{}を省略することができます
-
-
-
メタ注釈:注釈は注釈を記述するために使用されています
-
@target:注釈は場所の役割を記述することができます
-
ElementType値:
-
TYPE:クラスですることができ
-
METHOD:この方法を適用することができます
-
FIELD:メンバ変数に作用することができます
-
-
@Retention:説明ステージ注釈が予約されています
* @Retention(RetentionPolicy.RUNTIME):当前被描述的注解,会保留到class字节码文件中,并被JVM读取到 * @Documented:描述注解是否被抽取到api文档中 * @Inherited:描述注解是否被子类继承
-
プログラムの使用(分析)注:注釈で定義されたプロパティ値を取得
-
ロケーション定義注釈オブジェクト(クラス、メソッド、フィールド)を取得します
-
指定されたコメントを取得します。
-
getAnnotation(Class)
//其实就是在内存中生成了一个该注解接口的子类实现对象
public class ProImpl implements Pro{
public String className(){
return "cn.itcast.annotation.Demo1";
}
public String methodName(){
return "show";
}
}
- 抽象メソッド呼び出し注釈のgetプロパティ値が設定され