Method name is myMethod
Declaring class is Target
Arg 0: int
Exc 0: java.lang.NullPointerException
Exc 1: java.io.IOException
Return type is int
Access flags are 0x1
Method name is myMethod
Declaring class is SuperTarget
Arg 0: float
Return type is int
Access flags are 0x1
Method name is myNoargMethod
Declaring class is Target
Return type is void
Access flags are 0x9
Method name is myMethod
Declaring class is Target
Arg 0: [Ljava.lang.String;
Arg 1: float
Arg 2: char
Return type is int
Access flags are 0x1
SuperTarget constructor ()V
Target constructor ()V
Before, float is 3.1415925
myMethod: hi there 3.1415925 ✔ !
Result of invoke: 7
Calling no-arg void-return method
myNoargMethod ()V
throwingMethod
Invoke got expected exception:
java.lang.reflect.InvocationTargetException
java.lang.NullPointerException: gratuitous throw!
Field name is string1
Declaring class is Target
Field type is java.lang.String
Access flags are 0x1
string1 value is 'hey'
::: hey:yo:there
string1 value is now 'a new string'
::: a new string:yo:there
got expected illegal obj store exc
got the other expected access exc
got expected arg exc
pubLong initial value is 1122334455667788
pubLong new value is 9988776655443322
Field name is superInt
Declaring class is SuperTarget
Field type is int
Access flags are 0x1
superInt value is 1010101
superInt boxed is 1010101
superInt value is now 20202
superInt value (from short) is now 30303
superInt value is now 40404
got expected long->int failure
got expected long->int failure
got expected string->int failure
got expected int->short failure
Field name is superClassInt
Declaring class is SuperTarget
Field type is int
Access flags are 0x9
superClassInt value is 1010102
Field name is staticDouble
Declaring class is Target
Field type is double
Access flags are 0x9
staticDoubleVal value is 3.3
got expected double->long failure
as expected: aPrivateInt not found
Field name is constantString
Declaring class is Target
Field type is java.lang.String
Access flags are 0x19
Constant test value is a constant string
Field name is cantTouchThis
Declaring class is Target
Field type is int
Access flags are 0x11
cantTouchThis is 77
as expected: set-final throws exception
cantTouchThis is still 77
public final int Target.cantTouchThis accessible=false
public final int Target.cantTouchThis accessible=true
cantTouchThis is now 87
cantTouchThis is now 88
cons modifiers=1
SuperTarget constructor ()V
Target constructor (IF)V : ii=7 ff=3.3333
myMethod (I)I
arg=17 anInt=7
got expected exception for Class.newInstance
got expected exception for Constructor.newInstance
ReflectTest done!
public method
static java.lang.Object java.util.Collections.checkType(java.lang.Object,java.lang.Class) accessible=false
static java.lang.Object java.util.Collections.checkType(java.lang.Object,java.lang.Class) accessible=true
checkType invoking null
checkType got expected exception
calling const-class FieldNoisyInitUser.class
called const-class FieldNoisyInitUser.class
got fields
got field
FieldNoisyInitUser is initializing
read field value
FieldNoisyInit is initializing
calling const-class MethodNoisyInitUser.class
called const-class MethodNoisyInitUser.class
got methods
got method
MethodNoisyInitUser is initializing
invoked method
MethodNoisyInit is initializing
generic field: java.util.List<java.lang.String>
generic method fancyMethod params='[1] java.util.ArrayList<java.lang.String>' ret='java.util.Map<java.lang.Integer, java.lang.String>'
generic ctor Main params='[1] java.util.ArrayList<java.lang.Integer>'
fields are unique
fields are .equals
methods are unique
methods are .equals
type1 is a ParameterizedType
type2 is a ParameterizedType
type3 is a ParameterizedType
type1(java.util.Set<java.lang.String>) equals type2(java.util.Set<java.lang.String>)
type1(java.util.Set<java.lang.String>) equals type3(java.util.Set<java.lang.String>)
type1(java.util.Set<java.lang.String>) hashCode equals type2(java.util.Set<java.lang.String>) hashCode
type1(java.util.Set<java.lang.String>) hashCode equals type3(java.util.Set<java.lang.String>) hashCode
type1 is a GenericArrayType
type2 is a GenericArrayType
type3 is a GenericArrayType
type1(T[]) equals type2(T[])
type1(T[]) equals type3(T[])
type1(T[]) hashCode equals type2(T[]) hashCode
type1(T[]) hashCode equals type3(T[]) hashCode