Я нашел несколько связанных (не дублированных) вопросов, но они меня не удовлетворили.
Я не могу понять, где и почему использовать custom annotations
?
Я прочитал пример пользовательской аннотации в книге, но он не был подробно объяснен.
@interface MyAnno
{
String str();
int val();
}
class MyClass
{
@MyAnno(str = "Annotation example", val = 100)
public static void myMeth()
{
System.out.println("Inside myMeth()");
}
}
class CustomAnno
{
public static void main(String args[])
{
MyClass.myMeth();
}
}
Вывод будет таким, как ожидалось Inside myMeth()
.
У меня мало вопросов относительно этого примера.
1- Как я могу использовать
String str()
иint val()
в этой программе? ИЛИКакое использование абстрактного метода
custom annotation
?2- Почему
custom annotations
. Я имею в виду, какое влияние они оказывают на любой код.3 Как создать аннотацию, которая имеет такие эффекты, как @override, имеет? (я имею в виду любой вид эффекта, который можно заметить)
Если этот пример для вас бесполезен, пожалуйста, дайте мне подходящий небольшой пример, в котором используется custom annotation
.