src/share/classes/sun/reflect/annotation/AnnotationType.java

Print this page

        

*** 43,65 **** * Member name -> type mapping. Note that primitive types * are represented by the class objects for the corresponding wrapper * types. This matches the return value that must be used for a * dynamic proxy, allowing for a simple isInstance test. */ ! private final Map<String, Class<?>> memberTypes = new HashMap<String,Class<?>>(); /** * Member name -> default value mapping. */ ! private final Map<String, Object> memberDefaults = ! new HashMap<String, Object>(); /** * Member name -> Method object mapping. This (and its assoicated * accessor) are used only to generate AnnotationTypeMismatchExceptions. */ ! private final Map<String, Method> members = new HashMap<String, Method>(); /** * The retention policy for this annotation type. */ private RetentionPolicy retention = RetentionPolicy.RUNTIME;; --- 43,64 ---- * Member name -> type mapping. Note that primitive types * are represented by the class objects for the corresponding wrapper * types. This matches the return value that must be used for a * dynamic proxy, allowing for a simple isInstance test. */ ! private final Map<String, Class<?>> memberTypes; /** * Member name -> default value mapping. */ ! private final Map<String, Object> memberDefaults; /** * Member name -> Method object mapping. This (and its assoicated * accessor) are used only to generate AnnotationTypeMismatchExceptions. */ ! private final Map<String, Method> members; /** * The retention policy for this annotation type. */ private RetentionPolicy retention = RetentionPolicy.RUNTIME;;
*** 103,112 **** --- 102,114 ---- // Initialize memberTypes and defaultValues return annotationClass.getDeclaredMethods(); } }); + memberTypes = new HashMap<String,Class<?>>(methods.length+1, 1.0f); + memberDefaults = new HashMap<String, Object>(0); + members = new HashMap<String, Method>(methods.length+1, 1.0f); for (Method method : methods) { if (method.getParameterTypes().length != 0) throw new IllegalArgumentException(method + " has params"); String name = method.getName();