@Documented @Retention(value=RUNTIME) @Target(value={TYPE_USE,TYPE_PARAMETER}) @SubtypeOf(value={Unsigned.class,Signed.class}) public @interface Constant
Signed
or Unsigned
. It is either a manifest
literal, or it is a value whose most significant bit is not set (so it has the same
interpretation as signed or unsigned)
The programmer should not write this annotation; the programmer should always write Signed
or Unsigned
to indicate how the value is intended to be interpreted. The
programmer can also annotate values as @NonNegative
, @Positive
, or @IntRange
(from=someNonNegativeConstant).