Voglio deprecare alcuni, ma non tutti i valori di enumerazione possibili.E 'possibile deprecare alcuni dei valori di un envo java e se sì, come?
risposta
Sì, inserire un'annotazione @Decrecata su di essi. Per esempio:
enum Status {
OK,
ERROR,
@Deprecated
PROBLEM
}
È possibile anche aggiungere un tag JavaDoc @deprecated
di documentarlo:
enum Status {
OK,
ERROR,
/**
* @deprecated Use ERROR instead.
*/
@Deprecated
PROBLEM
}
Mi sono sempre chiesto (beh, occasionalmente) perché il tipo di annotazione '@ Deprecato' non permetta un' valore' per quello scopo. – Barend
"Non utilizzare questo valore" è un commento inutile. Non dice altro che l'annotazione deprecata. Un commento di ritiro dovrebbe indicare in base a quale valore viene sostituito. –
@JB Nizet questo era solo per dimostrare il principio. L'ho cambiato. – Jesper
appena provato eclissi, funziona (non lo si prova?):
public class Test {
public static void main(String[] arg) {
System.err.println(EnumTest.A);
System.err.println(EnumTest.B);
}
public static enum EnumTest {
A, @Deprecated B, C, D, E;
}
}
Vedere il tutorial [Annotazioni] (http://download.oracle.com/javase/tutorial/java/javaOO/annotations.html). – mre
Quanto è difficile scrivere "@Deprecated" davanti a uno dei tuoi valori enum? – Bombe
@Bombe, per favore non scagliare nuovi programmatori per non sapere qualcosa che è semplice nei tuoi occhi. – Jesper