بالإضافة إلى الاستبقاء ، هناك ثلاثة تعليقات توضيحية أخرى مقدمة من JDK 5 ، وهي الهدف والورث والتوثيق.
الهدف الهدف هو المكان الذي يتم فيه استخدام التعليق التوضيحي المستهدف ، والذي يحدد توقيت التعليقات التوضيحية المستخدمة ، أي نوع عناصر البرنامج التي ينطبق عليها التعليق التوضيحي. إذا لم يكن هناك تعليق توضيحي مستهدف في إعلان نوع التعليقات التوضيحية ، فيمكن استخدام النوع المعلن في أي عنصر البرنامج. في حالة وجود مثل هذا metaannotation ، يفرض المترجم حد الاستخدام المحدد.
يتم تعريف الهدف على النحو التالي:
@موثقة@الاستبقاء (attreencepolicy.runtime) target (elementType.annotation_type) الهدف public interface {elementType [] value () ؛}كما ترون ، يحتوي Target على سمة قيمة واحدة فقط ، ونوعه هو نوع Enum type elementType. إعلان ElementType هو كما يلي:
يمكن استخدام التعليقات العامة elementType { / ** التعليقات التوضيحية في الفئات والواجهات (بما في ذلك أنواع التعليقات التوضيحية) أو إعلانات التعداد* / type ، / ** إعلانات الحقل (بما في ذلك ثوابت التعداد)* / حقل ، / ** إعلانات طريقة* / طريقة ، / **. / ** إعلانات نوع التعليقات التوضيحية* / annotation_type ، / ** إعلانات الحزمة* / الحزمة}تشير التعليقات التوضيحية الموثقة إلى ما إذا كانت معلومات التعليق التوضيحي إضافة إلى المستند عند صنع Javadoc. إذا كان التعليق التوضيحي يستخدم document عند الإعلان ، فسيتم إضافة معلومات التعليق التوضيحي إلى Javadoc عند صنع Javadoc. بيان التعليقات التوضيحية على النحو التالي:
@موثقة@الاستبقاء (value = runtime)@target (value = enrotation_type) // تشير إلى أنه لا يمكن استخدام هذا التعليق التوضيحي إلا عند إعلان التعليق التوضيحي ، أي التعليق التوضيحي العام الموثق {}التعليقات التوضيحية الموروثة هي أيضًا شرح توبيقي ، والإعلان كما يلي:
@Document@attreence (value = runtime)@target (value = annotation_type) public@interface الموروثة {}تشير التعليقات التوضيحية الموروثة إلى ما إذا كانت التعليقات التوضيحية قد ورثها الفئات الفرعية ، ولا يتم توريث التقصير. عند الإعلان عن التعليق التوضيحي ، يتم استخدام التعليق التوضيحي inherited ، ثم يتم توريح التعليقات التوضيحية بواسطة فئة فرعية من الفصل باستخدام التعليقات التوضيحية.