@Documented @Retention(value=CLASS) @Target(value={TYPE,FIELD,METHOD,PARAMETER,LOCAL_VARIABLE,TYPE_USE,TYPE_PARAMETER}) public @interface Opt
null
may appear.
This is the opposite to the "NonNull" option, as proposed by oracle, but
strictness is the normal case in our way of coding.
It can be applied to the following places where types do occur:
class c { public static @Opt Integer i ; public @Opt String makeString (final String s; final @Opt String i) {..} }((LATER a use can be considered like
System.print("result = " + @Opt a.getId());))
see also the complete user documentation .