Почему @SafeVarags нельзя применить к методам экземпляра в конечном классе?


Согласно документации SafeVarargs, аннотацию @SafeVarargs можно применять только к конструкторам или методам переменной арности, которые являются либо static, либо final. Это, я прочитал , чтобы устранить проблемы с наследованием аннотаций; то есть, аннотации к методам допускаются только в том случае, если метод не может быть переопределен. Очевидно, что конструкторы, методы static и методы final не могут быть переопределены. Однако, ни один из методов private или методов в final class не может. Кто-то жаловался на невозможность определить @SafeVarargs private методы, нони один из этих вопросов не был решен . В общем, кажется, что никому нет до этого дела. Я что-то упустил? Жалуюсь ли я на то, что не имеет никакого практического применения? Или... ?

1 7

1 ответ:

Это планируется исправить в Java 9; см. http://openjdk.java.net/jeps/213 .