Хотя это правда, что аннотации Java разделяют много общего с C# атрибутов, ФП задает конкретный вопрос.
В Java нет прямого эквивалента C# AttributesUsage attribute. Это основной атрибут C#, который вы применяете при создании собственных пользовательских атрибутов. Он используется для управления поведением вашего атрибута.
Вы можете использовать его:
- ограничить возможные цели вашего атрибута. См. AttributeTargets enumeration для различных опций.
- Решите, если атрибут будет применяться к унаследованным членам
- Решите, если вы имеете к этому атрибуту несколько раз на тот же элемент
В этом случае автор C# код застряли с параметрами по умолчанию , Пользовательский атрибут, который они написали, может быть применен к любому классу и не имеет интересного поведения в отношении членов наследования (он применяется к унаследованным членам), и если его можно использовать несколько раз для члена (он не может).
Чтобы перенести этот код на Java, вам необходимо создать аннотацию Java, которая аналогична атрибуту автора C# PVAResponseAttribute.
Однако в этом случае вам не нужно беспокоиться о том, что нет аннотации Java, которая является прямым эквивалентом атрибута C# AttributesUsage.
http://ru.wikipedia.org/wiki/Comparison_of_C_Sharp_and_Java – user1329572