blob: 066399de5eee48e450ffc151a327e2496c9fe5a5 [file] [log] [blame]
package annotations;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
/**
* Annotation declaration with different values
*/
@Retention(RetentionPolicy.RUNTIME)
public @interface ValuesAnnotation {
byte byteValue() default (byte) 255;
char charValue() default (char) 128;
boolean booleanValue() default true;
int intValue() default 10;
short shortValue() default (short) 20;
long longValue() default 100L;
float floatValue() default 10.0F;
double doubleValue() default 20.0D;
String stringValue() default "defaultString";
Class classValue() default Values.class;
ValuesEnum enumValue() default ValuesEnum.ONE;
ValueAttrAnnotation annotationValue() default @ValueAttrAnnotation;
byte[] byteArrayValue() default {(byte) 128, (byte) 129};
char[] charArrayValue() default { '1', '2'};
boolean[] booleanArrayValue() default { true, false};
int[] intArrayValue() default { 500, 501};
short[] shortArrayValue() default { (short) 20000, (short) 2001};
long[] longArrayValue() default { 101L, 102L};
float[] floatArrayValue() default { 11.0F, 12.0F};
double[] doubleArrayValue() default { 21.0D, 22.0D};
String[] stringArrayValue() default { "11", "22"};
ValuesEnum[] enumArrayValue() default { ValuesEnum.ONE, ValuesEnum.TWO};
ValueAttrAnnotation[] annotationArrayValue() default { @ValueAttrAnnotation(), @ValueAttrAnnotation("1")};
Class[] classArrayValue() default { Values.class, Values.class};
}