- java.lang.reflect - Home
- java.lang.reflect - AccessibleObject
- java.lang.reflect - Array
- java.lang.reflect - Constructor<T>
- java.lang.reflect - Field
- java.lang.reflect - Method
- java.lang.reflect - Modifier
- java.lang.reflect - Proxy
java.lang.reflect.Constructor.getGenericExceptionTypes() Method Example
Description
The java.lang.reflect.Constructor.getGenericExceptionTypes() method returns an array of Type objects that represent the exceptions declared to be thrown by this Constructor object. Returns an array of length 0 if the underlying method declares no exceptions in its throws clause.
Declaration
Following is the declaration for java.lang.reflect.Constructor.getGenericExceptionTypes() method.
public Type[] getGenericExceptionTypes()
Returns
an array of Types that represent the exception types thrown by the underlying method.
Exceptions
GenericSignatureFormatError − if the generic method signature does not conform to the format specified in The Java Virtual Machine Specification.
TypeNotPresentException − if the underlying method's throws clause refers to a non-existent type declaration.
MalformedParameterizedTypeException − if the underlying method's throws clause refers to a parameterized type that cannot be instantiated for any reason.
Example
The following example shows the usage of java.lang.reflect.Constructor.getGenericExceptionTypes() method.
package com.tutorialspoint;
import java.lang.reflect.Constructor;
import java.lang.reflect.Type;
public class ConstructorDemo {
public static void main(String[] args) {
Constructor[] constructors = SampleClass.class.getConstructors();
Type[] exceptions = constructors[0].getGenericExceptionTypes();
for (int i = 0; i < exceptions.length; i++) {
System.out.println(exceptions[i]);
}
}
}
class SampleClass {
private String sampleField;
public SampleClass() throws ArrayIndexOutOfBoundsException {
}
public SampleClass(String sampleField){
this.sampleField = sampleField;
}
public String getSampleField() {
return sampleField;
}
public void setSampleField(String sampleField) {
this.sampleField = sampleField;
}
}
Let us compile and run the above program, this will produce the following result −
class java.lang.ArrayIndexOutOfBoundsException