@Beta public abstract class AbstractInvocationHandler extends Object implements InvocationHandler
InvocationHandler
that handles Object.equals(java.lang.Object)
,
Object.hashCode()
and Object.toString()
. For example: class Unsupported extends AbstractInvocationHandler { protected Object handleInvocation( Object proxy, Method method, Object[] args) { throw new UnsupportedOperationException(); } } CharSequence unsupported = Reflection.newProxy(CharSequence.class, new Unsupported());
Constructor and Description |
---|
AbstractInvocationHandler() |
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object obj)
By default delegates to
Object.equals(java.lang.Object) so instances are only equal if they are
identical. |
int |
hashCode()
By default delegates to
Object.hashCode() . |
Object |
invoke(Object proxy,
Method method,
Object[] args) |
String |
toString()
By default delegates to
Object.toString() . |
public final Object invoke(Object proxy, Method method, @Nullable Object[] args) throws Throwable
proxy.hashCode()
delegates to hashCode()
proxy.toString()
delegates to toString()
proxy.equals(argument)
returns true if: proxy
and argument
are of the same type
equals(java.lang.Object)
returns true for the InvocationHandler
of argument
handleInvocation(java.lang.Object, java.lang.reflect.Method, java.lang.Object[])
.
invoke
in interface InvocationHandler
Throwable
public boolean equals(Object obj)
Object.equals(java.lang.Object)
so instances are only equal if they are
identical. proxy.equals(argument)
returns true if: proxy
and argument
are of the same type
InvocationHandler
of argument
Subclasses can override this method to provide custom equality.
public int hashCode()
Object.hashCode()
. The dynamic proxies' hashCode()
will
delegate to this method. Subclasses can override this method to provide custom equality.public String toString()
Object.toString()
. The dynamic proxies' toString()
will
delegate to this method. Subclasses can override this method to provide custom string
representation for the proxies.Copyright © 2010 - 2020 Adobe. All Rights Reserved