2016-02-05 11 views
7

Quindi, le persone utilizzano l'annotazione @Deprecated per le API che sono state deprecate.Cosa è il contrario di @deprecated in java

C'è qualche annotazione che notifica agli utenti se il metodo è in evoluzione e non è stabile?

+2

Non incorporato ma è possibile crearne uno proprio. Mi piace '@ Beta'. – Tunaki

+2

C'è un'annotazione ['@ Beta' in guava] (http://docs.guava-libraries.googlecode.com/git/javadoc/com/google/common/annotations/Beta.html) che è possibile utilizzare. – azurefrog

+1

Vedi anche: http://stackoverflow.com/questions/32555597/annotating-unstable-classes-methods-for-javadoc – assylias

risposta

4

Afaik, non esiste ancora, devi crearne uno tuo.

JEP277 definire un @Deprecated(EXPERIMENTAL), ma è solo una proposta.

2

In hadoop c'è l'annotazione InterfaceStability per questi scopi. La cosa divertente è che questa annotazione non è stabile. Dubito che questa cosa possa apparire in JDK.

@InterfaceAudience.Public 
@InterfaceStability.Evolving 
public class InterfaceStability { 
    /** 
    * Can evolve while retaining compatibility for minor release boundaries.; 
    * can break compatibility only at major release (ie. at m.0). 
    */ 
    @Documented 
    public @interface Stable {}; 

    /** 
    * Evolving, but can break compatibility at minor release (i.e. m.x) 
    */ 
    @Documented 
    public @interface Evolving {}; 

    /** 
    * No guarantee is provided as to reliability or stability across any 
    * level of release granularity. 
    */ 
    @Documented 
    public @interface Unstable {}; 
}