205 * the executable represented by this object. 206 */ 207 public abstract int getModifiers(); 208 209 /** 210 * Returns an array of {@code TypeVariable} objects that represent the 211 * type variables declared by the generic declaration represented by this 212 * {@code GenericDeclaration} object, in declaration order. Returns an 213 * array of length 0 if the underlying generic declaration declares no type 214 * variables. 215 * 216 * @return an array of {@code TypeVariable} objects that represent 217 * the type variables declared by this generic declaration 218 * @throws GenericSignatureFormatError if the generic 219 * signature of this generic declaration does not conform to 220 * the format specified in 221 * <cite>The Java™ Virtual Machine Specification</cite> 222 */ 223 public abstract TypeVariable<?>[] getTypeParameters(); 224 225 // returns shared array of parameter types - must never give it out 226 // to the untrusted code... 227 abstract Class<?>[] getSharedParameterTypes(); 228 229 /** 230 * Returns an array of {@code Class} objects that represent the formal 231 * parameter types, in declaration order, of the executable 232 * represented by this object. Returns an array of length 233 * 0 if the underlying executable takes no parameters. 234 * 235 * @return the parameter types for the executable this object 236 * represents 237 */ 238 public abstract Class<?>[] getParameterTypes(); 239 240 /** 241 * Returns the number of formal parameters (whether explicitly 242 * declared or implicitly declared or neither) for the executable 243 * represented by this object. 244 * 245 * @return The number of formal parameters for the executable this 246 * object represents 247 */ 248 public int getParameterCount() { | 205 * the executable represented by this object. 206 */ 207 public abstract int getModifiers(); 208 209 /** 210 * Returns an array of {@code TypeVariable} objects that represent the 211 * type variables declared by the generic declaration represented by this 212 * {@code GenericDeclaration} object, in declaration order. Returns an 213 * array of length 0 if the underlying generic declaration declares no type 214 * variables. 215 * 216 * @return an array of {@code TypeVariable} objects that represent 217 * the type variables declared by this generic declaration 218 * @throws GenericSignatureFormatError if the generic 219 * signature of this generic declaration does not conform to 220 * the format specified in 221 * <cite>The Java™ Virtual Machine Specification</cite> 222 */ 223 public abstract TypeVariable<?>[] getTypeParameters(); 224 225 /** 226 * Returns an array of {@code Class} objects that represent the formal 227 * parameter types, in declaration order, of the executable 228 * represented by this object. Returns an array of length 229 * 0 if the underlying executable takes no parameters. 230 * 231 * @return the parameter types for the executable this object 232 * represents 233 */ 234 public abstract Class<?>[] getParameterTypes(); 235 236 /** 237 * Returns the number of formal parameters (whether explicitly 238 * declared or implicitly declared or neither) for the executable 239 * represented by this object. 240 * 241 * @return The number of formal parameters for the executable this 242 * object represents 243 */ 244 public int getParameterCount() { |