public final class com.sun.beans.finder.ConstructorFinder extends com.sun.beans.finder.AbstractFinder<java.lang.reflect.Constructor<?>>
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.sun.beans.finder.ConstructorFinder
super_class: com.sun.beans.finder.AbstractFinder
{
private static final com.sun.beans.util.Cache<com.sun.beans.finder.Signature, java.lang.reflect.Constructor<?>> CACHE;
descriptor: Lcom/sun/beans/util/Cache;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Lcom/sun/beans/util/Cache<Lcom/sun/beans/finder/Signature;Ljava/lang/reflect/Constructor<*>;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: new com.sun.beans.finder.ConstructorFinder$1
dup
getstatic com.sun.beans.util.Cache$Kind.SOFT:Lcom/sun/beans/util/Cache$Kind;
getstatic com.sun.beans.util.Cache$Kind.SOFT:Lcom/sun/beans/util/Cache$Kind;
invokespecial com.sun.beans.finder.ConstructorFinder$1.<init>:(Lcom/sun/beans/util/Cache$Kind;Lcom/sun/beans/util/Cache$Kind;)V
putstatic com.sun.beans.finder.ConstructorFinder.CACHE:Lcom/sun/beans/util/Cache;
1: return
LocalVariableTable:
Start End Slot Name Signature
public static java.lang.reflect.Constructor<?> findConstructor(java.lang.Class<?>, java.lang.Class<?>[]);
descriptor: (Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual java.lang.Class.isPrimitive:()Z
ifeq 2
1: new java.lang.NoSuchMethodException
dup
ldc "Primitive wrapper does not contain constructors"
invokespecial java.lang.NoSuchMethodException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.Class.isInterface:()Z
ifeq 4
3: new java.lang.NoSuchMethodException
dup
ldc "Interface does not contain constructors"
invokespecial java.lang.NoSuchMethodException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.Class.getModifiers:()I
invokestatic java.lang.reflect.Modifier.isAbstract:(I)Z
ifeq 6
5: new java.lang.NoSuchMethodException
dup
ldc "Abstract class cannot be instantiated"
invokespecial java.lang.NoSuchMethodException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.Class.getModifiers:()I
invokestatic java.lang.reflect.Modifier.isPublic:(I)Z
ifeq 7
aload 0
invokestatic sun.reflect.misc.ReflectUtil.isPackageAccessible:(Ljava/lang/Class;)Z
ifne 8
7: StackMap locals:
StackMap stack:
new java.lang.NoSuchMethodException
dup
ldc "Class is not accessible"
invokespecial java.lang.NoSuchMethodException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals:
StackMap stack:
aload 1
invokestatic com.sun.beans.finder.PrimitiveWrapperMap.replacePrimitivesWithWrappers:([Ljava/lang/Class;)V
9: new com.sun.beans.finder.Signature
dup
aload 0
aload 1
invokespecial com.sun.beans.finder.Signature.<init>:(Ljava/lang/Class;[Ljava/lang/Class;)V
astore 2
start local 2 10: getstatic com.sun.beans.finder.ConstructorFinder.CACHE:Lcom/sun/beans/util/Cache;
aload 2
invokevirtual com.sun.beans.util.Cache.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.reflect.Constructor
11: areturn
12: StackMap locals: java.lang.Class java.lang.Class[] com.sun.beans.finder.Signature
StackMap stack: com.sun.beans.finder.SignatureException
astore 3
start local 3 13: aload 3
ldc "Constructor is not found"
invokevirtual com.sun.beans.finder.SignatureException.toNoSuchMethodException:(Ljava/lang/String;)Ljava/lang/NoSuchMethodException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 type Ljava/lang/Class<*>;
0 14 1 args [Ljava/lang/Class;
10 14 2 signature Lcom/sun/beans/finder/Signature;
13 14 3 exception Lcom/sun/beans/finder/SignatureException;
Exception table:
from to target type
10 11 12 Class com.sun.beans.finder.SignatureException
Exceptions:
throws java.lang.NoSuchMethodException
Signature: (Ljava/lang/Class<*>;[Ljava/lang/Class<*>;)Ljava/lang/reflect/Constructor<*>;
MethodParameters:
Name Flags
type
args
private void <init>(java.lang.Class<?>[]);
descriptor: ([Ljava/lang/Class;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial com.sun.beans.finder.AbstractFinder.<init>:([Ljava/lang/Class;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/beans/finder/ConstructorFinder;
0 2 1 args [Ljava/lang/Class;
Signature: ([Ljava/lang/Class<*>;)V
MethodParameters:
Name Flags
args
protected java.lang.Class<?>[] getParameters(java.lang.reflect.Constructor<?>);
descriptor: (Ljava/lang/reflect/Constructor;)[Ljava/lang/Class;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.lang.reflect.Constructor.getParameterTypes:()[Ljava/lang/Class;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/beans/finder/ConstructorFinder;
0 1 1 constructor Ljava/lang/reflect/Constructor<*>;
Signature: (Ljava/lang/reflect/Constructor<*>;)[Ljava/lang/Class<*>;
MethodParameters:
Name Flags
constructor
protected boolean isVarArgs(java.lang.reflect.Constructor<?>);
descriptor: (Ljava/lang/reflect/Constructor;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.lang.reflect.Constructor.isVarArgs:()Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/beans/finder/ConstructorFinder;
0 1 1 constructor Ljava/lang/reflect/Constructor<*>;
Signature: (Ljava/lang/reflect/Constructor<*>;)Z
MethodParameters:
Name Flags
constructor
protected boolean isVarArgs(java.lang.reflect.Member);
descriptor: (Ljava/lang/reflect/Member;)Z
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast java.lang.reflect.Constructor
invokevirtual com.sun.beans.finder.ConstructorFinder.isVarArgs:(Ljava/lang/reflect/Constructor;)Z
ireturn
LocalVariableTable:
Start End Slot Name Signature
protected java.lang.Class[] getParameters(java.lang.reflect.Member);
descriptor: (Ljava/lang/reflect/Member;)[Ljava/lang/Class;
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast java.lang.reflect.Constructor
invokevirtual com.sun.beans.finder.ConstructorFinder.getParameters:(Ljava/lang/reflect/Constructor;)[Ljava/lang/Class;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Lcom/sun/beans/finder/AbstractFinder<Ljava/lang/reflect/Constructor<*>;>;
SourceFile: "ConstructorFinder.java"
NestMembers:
com.sun.beans.finder.ConstructorFinder$1
InnerClasses:
com.sun.beans.finder.ConstructorFinder$1
public abstract Kind = com.sun.beans.util.Cache$Kind of com.sun.beans.util.Cache