Od doc Java:Polityka Adnotacja SOURCE retencji
KLASA: adnotacje mają być zapisane w pliku klasy przez kompilator, ale nie muszą być zatrzymywane przez VM w czasie wykonywania.
RUNTIME: Adnotacje powinny być zapisywane w pliku klasy przez kompilator i zachowywane przez maszynę wirtualną w czasie wykonywania, aby mogły być odczytywane w odbiciu.
ŹRÓDŁO: Adnotacje należy usunąć przez kompilator.
Rozumiem zwyczaje wykonywania (w celu korzystania z adnotacji z odbicia) i klasy (dla kompilatora), ale nie rozumiem, kiedy może to być przydatne do wykorzystania
@Retention (RetentionPolicy. ŹRÓDŁO)
Czy możesz wyjaśnić?
i dlaczego nie RetentionPolicy.CLASS? – JohnJohnGa
+1: Niektóre adnotacje używane przez kompilator to zachowanie CLASS. –
Nie są potrzebne w ByteCode (w pliku .class). – gkamal