Condividi tramite


IFunctionalInterface Interfaccia

Definizione

Tipo di annotazione informativo usato per indicare che una dichiarazione del tipo di interfaccia deve essere un'interfaccia funzionale definita dalla specifica del linguaggio Java.

[Android.Runtime.Register("java/lang/FunctionalInterface", "", "Java.Lang.IFunctionalInterfaceInvoker", ApiSince=24)]
public interface IFunctionalInterface : IDisposable, Java.Interop.IJavaPeerable, Java.Lang.Annotation.IAnnotation
[<Android.Runtime.Register("java/lang/FunctionalInterface", "", "Java.Lang.IFunctionalInterfaceInvoker", ApiSince=24)>]
type IFunctionalInterface = interface
    interface IAnnotation
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Attributi
Implementazioni

Commenti

Tipo di annotazione informativo usato per indicare che una dichiarazione del tipo di interfaccia deve essere un'interfaccia funzionale definita dalla specifica del linguaggio Java.

Concettualmente, un'interfaccia funzionale ha esattamente un metodo astratto. Poiché i metodi predefiniti java.lang.reflect.Method#isDefault() hanno un'implementazione, non sono astratti. Se un'interfaccia dichiara un metodo astratto che esegue l'override di uno dei metodi pubblici di java.lang.Object, che inoltre non <esegue il>conteggio dei metodi< astratti> per il conteggio dei metodi astratti dell'interfaccia, poiché qualsiasi implementazione dell'interfaccia avrà un'implementazione da java.lang.Object o altrove.

Si noti che è possibile creare istanze di interfacce funzionali con espressioni lambda, riferimenti al metodo o riferimenti al costruttore.

Se un tipo è annotato con questo tipo di annotazione, i compilatori devono generare un messaggio di errore, a meno che:

<ul><li> Il tipo è un tipo di interfaccia e non un tipo di annotazione, un'enumerazione o una classe. <li> Il tipo annotato soddisfa i requisiti di un'interfaccia funzionale. </ul>

Tuttavia, il compilatore considererà qualsiasi interfaccia che soddisfa la definizione di un'interfaccia funzionale come interfaccia funzionale indipendentemente dal fatto che nella dichiarazione di interfaccia sia presente o meno un'annotazione FunctionalInterface .

Aggiunta nella versione 1.8.

Documentazione java per java.lang.FunctionalInterface.

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Proprietà

Handle

Ottiene il valore JNI dell'oggetto Android sottostante.

(Ereditato da IJavaObject)
JniIdentityHashCode

Restituisce il valore di java.lang.System.identityHashCode() per l'istanza di cui è stato eseguito il wrapping.

(Ereditato da IJavaPeerable)
JniManagedPeerState

Stato del peer gestito.

(Ereditato da IJavaPeerable)
JniPeerMembers

Supporto per l'accesso ai membri e la chiamata.

(Ereditato da IJavaPeerable)
PeerReference

Restituisce un JniObjectReference oggetto dell'istanza dell'oggetto Java di cui è stato eseguito il wrapping.

(Ereditato da IJavaPeerable)

Metodi

AnnotationType()

Restituisce l'interfaccia di annotazione di questa annotazione.

(Ereditato da IAnnotation)
Disposed()

Chiamato quando l'istanza è stata eliminata.

(Ereditato da IJavaPeerable)
DisposeUnlessReferenced()

Se non sono presenti riferimenti in sospeso a questa istanza, chiama Dispose(); in caso contrario, non esegue alcuna operazione.

(Ereditato da IJavaPeerable)
Equals(Object)

Restituisce true se l'oggetto specificato rappresenta un'annotazione equivalente logicamente a questa.

(Ereditato da IAnnotation)
Finalized()

Chiamato quando l'istanza è stata finalizzata.

(Ereditato da IJavaPeerable)
GetHashCode()

Restituisce il codice hash di questa annotazione.

(Ereditato da IAnnotation)
SetJniIdentityHashCode(Int32)

Impostare il valore restituito da JniIdentityHashCode.

(Ereditato da IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

Tipo di annotazione informativo usato per indicare che una dichiarazione del tipo di interfaccia deve essere un'interfaccia funzionale definita dalla specifica del linguaggio Java.

(Ereditato da IJavaPeerable)
SetPeerReference(JniObjectReference)

Impostare il valore restituito da PeerReference.

(Ereditato da IJavaPeerable)
ToString()

Restituisce una rappresentazione di stringa di questa annotazione.

(Ereditato da IAnnotation)
UnregisterFromRuntime()

Annullare la registrazione di questa istanza in modo che il runtime non lo restituisca dalle chiamate future Java.Interop.JniRuntime+JniValueManager.PeekValue .

(Ereditato da IJavaPeerable)

Metodi di estensione

JavaCast<TResult>(IJavaObject)

Esegue una conversione del tipo di tipo controllato dal runtime Android.

JavaCast<TResult>(IJavaObject)

Tipo di annotazione informativo usato per indicare che una dichiarazione del tipo di interfaccia deve essere un'interfaccia funzionale definita dalla specifica del linguaggio Java.

GetJniTypeName(IJavaPeerable)

Tipo di annotazione informativo usato per indicare che una dichiarazione del tipo di interfaccia deve essere un'interfaccia funzionale definita dalla specifica del linguaggio Java.

Si applica a