Vorrei rendere uno dei miei metodi "deprecato" = non più utilizzato.
Ma vorrei comunque averlo nella mia API. Voglio solo mostrare "avvertimento" a chiunque usi quel metodo.
Come posso raggiungerlo?
Vorrei rendere uno dei miei metodi "deprecato" = non più utilizzato.
Ma vorrei comunque averlo nella mia API. Voglio solo mostrare "avvertimento" a chiunque usi quel metodo.
Come posso raggiungerlo?
Risposte:
Utilizzare @Deprecated
il metodo Non dimenticare di chiarire il campo javadoc:
/**
* Does some thing in old style.
*
* @deprecated use {@link #new()} instead.
*/
@Deprecated
public void old() {
// ...
}
reason
con un valore predefinito ""
non avrebbe potuto far male
@deprecated
messaggio nel commento potesse essere aggiunto a @Deprecated
(un punto per risolverli tutti) ...
Utilizzare sia l' @Deprecated
annotazione che il @deprecated
tag JavaDoc.
Il @deprecated
tag JavaDoc viene utilizzato a scopo di documentazione.
L' @Deprecated
annotazione indica al compilatore che il metodo è obsoleto. Ecco cosa dice nel documento Sole / Oracoli sull'argomento:
L'uso
@Deprecated
dell'annotazione per deprecare una classe, un metodo o un campo garantisce che tutti i compilatori emettano avvisi quando il codice utilizza quell'elemento del programma. Al contrario, non vi è alcuna garanzia che tutti i compilatori emetteranno sempre avvisi basati sul@deprecated
tag Javadoc, anche se attualmente i compilatori Sun lo fanno. Altri compilatori non possono emettere tali avvisi. Pertanto, l'utilizzo@Deprecated
dell'annotazione per generare avvisi è più portabile che basarsi sul@deprecated
tag Javadoc.
Puoi trovare il documento completo in Come e quando disapprovare le API
@deprecated
tag javadoc (in Java 4-), il compilatore ha contrassegnato il metodo (classe, campo) come obsoleto e gli IDE hanno mostrato degli avvisi, anche quando non era disponibile alcuna fonte.
poiché mancavano alcune spiegazioni minori
Usa l' @Deprecated
annotazione sul metodo in questo modo
/**
* @param basePrice
*
* @deprecated reason this method is deprecated <br/>
* {will be removed in next version} <br/>
* use {@link #setPurchasePrice()} instead like this:
*
*
* <blockquote><pre>
* getProduct().setPurchasePrice(200)
* </pre></blockquote>
*
*/
@Deprecated
public void setBaseprice(int basePrice) {
}
<br/>
{@link #setPurchasePrice()}
Ci sono due cose che puoi fare:
@Deprecated
annotazione al metodo e@deprecated
tag al javadoc del metodoDovresti fare entrambe le cose !
Citando la documentazione java su questo argomento:
A partire da J2SE 5.0, si depreca una classe, un metodo o un campo utilizzando l'annotazione @Deprecated. Inoltre, puoi usare il tag Javadoc @deprecated per dire agli sviluppatori cosa usare invece.
L'uso dell'annotazione fa sì che il compilatore Java generi avvisi quando viene utilizzata la classe, il metodo o il campo deprecati. Il compilatore elimina gli avvisi di deprecazione se un'unità di compilazione deprecata utilizza una classe, un metodo o un campo deprecati. Ciò consente di creare API legacy senza generare avvisi.
Si consiglia vivamente di utilizzare il tag Javadoc @deprecated con commenti appropriati che spiegano come utilizzare la nuova API. Ciò garantisce agli sviluppatori un percorso di migrazione praticabile dalla vecchia API alla nuova API
Usa l' annotazione @Deprecated
per il tuo metodo e dovresti anche menzionarla nei tuoi javadocs.