MethodHandles.Lookup.FindVarHandle(Class, String, Class) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Produce un valore VarHandle che concede l'accesso a un campo name non statico di tipo type dichiarato in una classe di tipo recv.
[Android.Runtime.Register("findVarHandle", "(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/VarHandle;", "", ApiSince=33)]
public Java.Lang.Invoke.VarHandle FindVarHandle(Java.Lang.Class recv, string name, Java.Lang.Class type);
[<Android.Runtime.Register("findVarHandle", "(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/VarHandle;", "", ApiSince=33)>]
member this.FindVarHandle : Java.Lang.Class * string * Java.Lang.Class -> Java.Lang.Invoke.VarHandle
Parametri
- recv
- Class
classe ricevitore, di tipo R, che dichiara il campo non statico
- name
- String
nome del campo
- type
- Class
tipo di campo, di tipo T
Valori restituiti
VarHandle che concede l'accesso a campi non statici.
- Attributi
Commenti
Produce un valore VarHandle che concede l'accesso a un campo name non statico di tipo type dichiarato in una classe di tipo recv. Il tipo di variabile varHandle è type e ha un tipo di coordinata, recv.
Il controllo di accesso viene eseguito immediatamente per conto della classe di ricerca.
Alcune modalità di accesso dell'oggetto VarHandle restituito non sono supportate nelle condizioni seguenti: <ul><li>se il campo è dichiarato final, la scrittura, l'aggiornamento atomico, l'aggiornamento numerico e le modalità di accesso agli aggiornamenti atomici bit per bit non sono supportate.
<li>se il tipo di campo è diverso da byte, short, charint, , long, floato double le modalità di accesso agli aggiornamenti atomici numerici non sono supportate.
<li>se il tipo di campo è diverso da boolean, byte, short, charo intlong quindi le modalità di accesso agli aggiornamenti atomici bit per bit non sono supportate.
</ul>
Se il campo viene dichiarato volatile , l'oggetto VarHandle restituito eseguirà l'override dell'accesso al campo (ignorando effettivamente la volatile dichiarazione) in base alle modalità di accesso specificate.
Se il tipo di campo è float o double quindi le modalità di accesso agli aggiornamenti numerici e atomiche confrontano i valori usando la relativa rappresentazione bit per bit (vedere Float#floatToRawIntBits rispettivamente e Double#doubleToRawLongBits).
Aggiunta in 9.
Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dalla e usati in base ai termini descritti in Creative License 2.5 Attribution License.