sun.reflect.annotation
Class AnnotationInvocationHandler
public final
class
AnnotationInvocationHandler
extends Object
implements InvocationHandler, Serializable
This class exists for serialization compatibility with the JDK.
VMs can choose to implement annotations by constructing proxies
with this invocation handler, but that is not required.
If a different strategy for proxy objects is chosen, they can
have a writeReplace method to substitute a Proxy based on this
invocation handler is used for serialization.
public AnnotationInvocationHandler(
Class type,
Map memberValues)
Construct a new invocation handler for an annotation proxy.
Note that the VM is responsible for filling the memberValues map
with the default values of all the annotation members.
public static boolean equals(
Class type,
Map memberValues,
Object other)
Compare an instance of AnnotationInvocationHandler with another object.
Note that the other object does not have to be an
AnnotationInvocationHandler, any implementation of the annotation
interface is allowed to be compared for equality.
Note that this makes the equals method asymmetric, but this behavior
is specified by Annotation.equals and identical to the JDK.
This method is public for use by other parts of the VM. Some VMs
(can) use different representations of annotations that reuse this
method.
public static int hashCode(
Class type,
Map memberValues)
Compute the hashCode for an annotation. Note that the algorithm is
specified by Annotation.hashCode.
This method is public for use by other parts of the VM. Some VMs
(can) use different representations of annotations that reuse this
method.
This method is public for use by other parts of the VM. Some VMs
(can) use different representations of annotations that reuse this
method.