У меня есть класс. Что-то вроде этого:Автоматически устанавливать атрибут после конструктора в аннотации
public class Example {
public Example() {
System.out.println("Constructor");
}
}
Теперь я хочу иметь атрибут «Версия», который предоставляется автоматически после построения. Можно ли разрешить его в аннотации? Лучшим решением было бы, если бы я мог написать аннотацию типа @VersionControl над некоторыми классами, а затем другой модуль устанавливает атрибут «версия» для классов.
Что-то вроде этого:
@VersionControl
public class Example {
int version; //this should be set automatically
public Example() {
System.out.println("Constructor");
}
}
Возможно ли это? Thx за вашу помощь!
Несомненно. Посмотрите на AspectJ или библиотеки, которые позволяют переписывать байт-коды. Но, как сейчас, ваш вопрос очень широк и, вероятно, не очень подходит для SO. –
Спасибо за ваш комментарий. Я посмотрю на AspectJ и постараюсь ответить на свой вопрос сам. – mrclrchtr