@Documented @Retention(value=RUNTIME) @Target(value=PARAMETER) public @interface DefaultCallHandle
null value is requested by setting a property.| Modifier and Type | Optional Element and Description |
|---|---|
boolean |
nullIfImpossible
Assigns
null to the parameter if it is impossible to invoke the super method or a possible dominant default method, if permitted. |
Class<?> |
targetType
If this parameter is not explicitly set, a parameter with the
DefaultCallHandle is only bound to a
source method if this source method directly represents an unambiguous, invokable default method. |
public abstract Class<?> targetType
DefaultCallHandle is only bound to a
source method if this source method directly represents an unambiguous, invokable default method. On the other
hand, if a method is not defined unambiguously by an interface, not setting this parameter will exclude
the target method with the annotated parameter from a binding to the source method.
If this parameter is however set to an explicit interface type, a default method is always invoked on this given type as long as this type defines a method with a compatible signature. If this is not the case, the target method with the annotated parameter is no longer considered as a possible binding candidate of a source method.
void type encodes an implicit resolution.public abstract boolean nullIfImpossible
null to the parameter if it is impossible to invoke the super method or a possible dominant default method, if permitted.true if a null constant should be assigned to this parameter in case that a legal binding is impossible.Copyright © 2014–2025. All rights reserved.