@Documented
@Target(value=METHOD)
@Retention(value=CLASS)
public @interface Const
Const
documents a method that promises not to change the internal state
of the method receiver. Documenting methods in this way helps programmers understand
which methods examine the object and return results based on that examination but don't
change the internal object state and which methods, by contrast, perform their function
but updating or changing internal object state.NonConst