MethodType Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Jenis metode mewakili argumen dan jenis pengembalian yang diterima dan dikembalikan oleh handel metode, atau argumen dan jenis pengembalian yang diteruskan dan diharapkan oleh pemanggil handel metode.
[Android.Runtime.Register("java/lang/invoke/MethodType", ApiSince=26, DoNotGenerateAcw=true)]
public sealed class MethodType : Java.Lang.Object, IDisposable, Java.IO.ISerializable, Java.Lang.Invoke.ITypeDescriptor.IOfMethod
[<Android.Runtime.Register("java/lang/invoke/MethodType", ApiSince=26, DoNotGenerateAcw=true)>]
type MethodType = class
inherit Object
interface ISerializable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
interface ITypeDescriptor.IOfMethod
interface ITypeDescriptor
- Warisan
- Atribut
- Penerapan
Keterangan
Jenis metode mewakili argumen dan jenis pengembalian yang diterima dan dikembalikan oleh handel metode, atau argumen dan jenis pengembalian yang diteruskan dan diharapkan oleh pemanggil handel metode. Jenis metode harus dicocokkan dengan benar antara handel metode dan semua pemanggilnya, dan operasi JVM memberlakukan pencocokan ini, khususnya selama panggilan ke MethodHandle#invokeExact MethodHandle.invokeExact dan MethodHandle#invoke MethodHandle.invoke, dan selama eksekusi invokedynamic instruksi.
Struktur adalah jenis pengembalian yang disertai dengan sejumlah jenis parameter. Jenis (primitif, void, dan referensi) diwakili oleh Class objek. (Untuk kemudahan eksposisi, kami memperlakukan void seolah-olah itu adalah jenis. Bahkan, itu menunjukkan tidak adanya jenis pengembalian.)
Semua instans MethodType tidak dapat diubah. Dua instans sepenuhnya dapat dipertukarkan jika dibandingkan. Kesetaraan tergantung pada korespondensi berpasangan dari jenis pengembalian dan parameter dan tidak pada yang lain.
Jenis ini hanya dapat dibuat dengan metode pabrik. Semua metode pabrik dapat menyimpan nilai cache, meskipun penembolokan tidak dijamin. Beberapa metode pabrik bersifat statis, sementara yang lain adalah metode virtual yang memodifikasi jenis metode prekursor, misalnya, dengan mengubah parameter yang dipilih.
Metode pabrik yang beroperasi pada grup jenis parameter disajikan secara sistematis dalam dua versi, sehingga array Java dan daftar Java dapat digunakan untuk bekerja dengan grup jenis parameter. Metode parameterArray kueri dan parameterList juga menyediakan pilihan antara array dan daftar.
MethodType objek terkadang berasal dari instruksi bytecode seperti invokedynamic, khususnya dari string deskriptor jenis yang terkait dengan instruksi dalam kumpulan konstanta file kelas.
Seperti kelas dan string, jenis metode juga dapat diwakili langsung dalam kumpulan konstanta file kelas sebagai konstanta. Jenis metode dapat dimuat oleh ldc instruksi yang mengacu pada entri kumpulan konstanta yang sesuai CONSTANT_MethodType . Entri mengacu pada CONSTANT_Utf8 ejaan untuk string deskriptor. (Untuk detail lengkap tentang konstanta jenis metode, lihat bagian 4.4.8 dan 5.4.3.5 dari spesifikasi komputer virtual Java.)
Ketika JVM mewujudkan MethodType string dari deskriptor, semua kelas bernama dalam deskriptor harus dapat diakses, dan akan dimuat. (Tetapi kelas tidak perlu diinisialisasi, seperti halnya dengan CONSTANT_Class.) Pemuatan ini dapat terjadi kapan saja sebelum MethodType objek diturunkan terlebih dahulu.
Java dokumentasi untuk java.lang.invoke.MethodType.
Bagian dari halaman ini adalah modifikasi berdasarkan pekerjaan yang dibuat dan dibagikan oleh Android Open Source Project dan digunakan sesuai dengan istilah yang dijelaskan dalam Lisensi Creative Commons 2.5 Lisensi Atribusi.
Properti
| Nama | Deskripsi |
|---|---|
| Class |
Mengembalikan kelas runtime dari . |
| Handle |
Handel ke instans Android yang mendasar. (Diperoleh dari Object) |
| HasPrimitives |
Melaporkan jika jenis ini berisi argumen primitif atau nilai pengembalian. |
| HasWrappers |
Melaporkan jika jenis ini berisi argumen pembungkus atau nilai pengembalian. |
| JniIdentityHashCode |
Mendapatkan kode hash identitas yang ditetapkan ke Java peer ini oleh runtime interop. (Diperoleh dari Object) |
| JniManagedPeerState |
Jenis metode mewakili argumen dan jenis pengembalian yang diterima dan dikembalikan oleh handel metode, atau argumen dan jenis pengembalian yang diteruskan dan diharapkan oleh pemanggil handel metode. (Diperoleh dari JavaObject) |
| JniPeerMembers |
Jenis metode mewakili argumen dan jenis pengembalian yang diterima dan dikembalikan oleh handel metode, atau argumen dan jenis pengembalian yang diteruskan dan diharapkan oleh pemanggil handel metode. |
| PeerReference |
Mendapatkan referensi objek JNI untuk peer Java ini. (Diperoleh dari Object) |
| ThresholdClass |
API ini mendukung infrastruktur Mono untuk Android dan tidak dimaksudkan untuk digunakan langsung dari kode Anda. (Diperoleh dari Object) |
| ThresholdType |
API ini mendukung infrastruktur Mono untuk Android dan tidak dimaksudkan untuk digunakan langsung dari kode Anda. (Diperoleh dari Object) |
Metode
| Nama | Deskripsi |
|---|---|
| AppendParameterTypes(Class[]) |
Menemukan atau membuat jenis metode dengan jenis parameter tambahan. |
| AppendParameterTypes(IList<Class>) |
Menemukan atau membuat jenis metode dengan jenis parameter tambahan. |
| ChangeParameterType(Int32, Class) |
Menemukan atau membuat jenis metode dengan satu jenis parameter yang berbeda. |
| ChangeReturnType(Class) |
Menemukan atau membuat jenis metode dengan jenis pengembalian yang berbeda. |
| Clone() |
Membuat dan mengembalikan salinan objek ini. (Diperoleh dari Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Jenis metode mewakili argumen dan jenis pengembalian yang diterima dan dikembalikan oleh handel metode, atau argumen dan jenis pengembalian yang diteruskan dan diharapkan oleh pemanggil handel metode. (Diperoleh dari JavaObject) |
| DescriptorString() |
Mengembalikan string deskriptor untuk jenis metode ini. |
| Dispose() |
Merilis sumber daya yang dipegang oleh rekan Java ini. (Diperoleh dari Object) |
| Dispose(Boolean) |
Merilis sumber daya yang dipegang oleh rekan Java ini. (Diperoleh dari Object) |
| DisposeUnlessReferenced() |
Jenis metode mewakili argumen dan jenis pengembalian yang diterima dan dikembalikan oleh handel metode, atau argumen dan jenis pengembalian yang diteruskan dan diharapkan oleh pemanggil handel metode. (Diperoleh dari JavaObject) |
| DropParameterTypes(Int32, Int32) |
Menemukan atau membuat jenis metode dengan beberapa jenis parameter dihilangkan. |
| Equals(Object) |
Jenis metode mewakili argumen dan jenis pengembalian yang diterima dan dikembalikan oleh handel metode, atau argumen dan jenis pengembalian yang diteruskan dan diharapkan oleh pemanggil handel metode. (Diperoleh dari JavaObject) |
| Equals(Object) |
Menunjukkan apakah beberapa objek lain "sama dengan" yang satu ini. (Diperoleh dari Object) |
| Erase() |
Menghapus semua jenis referensi ke |
| FromMethodDescriptorString(String, ClassLoader) |
Menemukan atau membuat instans jenis metode, mengingat ejaan deskriptor bytecode-nya. |
| Generic() |
Mengonversi semua jenis, baik referensi maupun primitif, menjadi |
| GenericMethodType(Int32, Boolean) |
Menemukan atau membuat jenis metode yang komponennya dengan |
| GenericMethodType(Int32) |
Menemukan atau membuat jenis metode yang komponennya semuanya |
| GetHashCode() |
Mengembalikan nilai kode hash untuk objek . (Diperoleh dari Object) |
| InsertParameterTypes(Int32, Class[]) |
Menemukan atau membuat jenis metode dengan jenis parameter tambahan. |
| InsertParameterTypes(Int32, IList<Class>) |
Menemukan atau membuat jenis metode dengan jenis parameter tambahan. |
| InvokeMethodType(Class, Class, Class[]) |
Menemukan atau membuat jenis metode dengan komponen yang diberikan. |
| InvokeMethodType(Class, Class) |
Menemukan atau membuat jenis metode dengan komponen yang diberikan. |
| InvokeMethodType(Class, Class[]) |
Menemukan atau membuat instans jenis metode yang diberikan. |
| InvokeMethodType(Class, IList<Class>) |
Menemukan atau membuat jenis metode dengan komponen yang diberikan. |
| InvokeMethodType(Class, MethodType) |
Menemukan atau membuat jenis metode dengan komponen yang diberikan. |
| InvokeMethodType(Class) |
Menemukan atau membuat jenis metode dengan komponen yang diberikan. |
| JavaFinalize() |
Dipanggil oleh pengumpul sampah pada objek ketika pengumpulan sampah menentukan bahwa tidak ada lagi referensi ke objek. (Diperoleh dari Object) |
| LastParameterType() |
Mengembalikan jenis parameter terakhir dari jenis metode ini. |
| Notify() |
Membangunkan satu utas yang menunggu monitor objek ini. (Diperoleh dari Object) |
| NotifyAll() |
Membangunkan semua utas yang menunggu monitor objek ini. (Diperoleh dari Object) |
| ParameterArray() |
Menyajikan jenis parameter sebagai array (metode kenyamanan). |
| ParameterCount() |
Mengembalikan jumlah jenis parameter dalam jenis metode ini. |
| ParameterList() |
Menyajikan jenis parameter sebagai daftar (metode kenyamanan). |
| ParameterType(Int32) |
Mengembalikan jenis parameter pada indeks yang ditentukan, dalam jenis metode ini. |
| ReturnType() |
Mengembalikan jenis pengembalian dari jenis metode ini. |
| SetHandle(IntPtr, JniHandleOwnership) |
Mengatur properti Handle. (Diperoleh dari Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Jenis metode mewakili argumen dan jenis pengembalian yang diterima dan dikembalikan oleh handel metode, atau argumen dan jenis pengembalian yang diteruskan dan diharapkan oleh pemanggil handel metode. (Diperoleh dari JavaObject) |
| ToArray<T>() |
Membuat array terkelola dari pembungkus array Java ini. (Diperoleh dari Object) |
| ToMethodDescriptorString() |
Menghasilkan representasi deskriptor bytecode dari jenis metode. |
| ToString() |
Mengembalikan representasi string objek. (Diperoleh dari Object) |
| UnregisterFromRuntime() |
Membatalkan pendaftaran peer Java ini dari runtime interop. (Diperoleh dari Object) |
| Unwrap() |
Mengonversi semua jenis pembungkus ke jenis primitif yang sesuai. |
| Wait() |
Menyebabkan utas saat ini menunggu sampai terbangun, biasanya dengan <diberitahu></em> atau <em>terganggu</em>. (Diperoleh dari Object) |
| Wait(Int64, Int32) |
Menyebabkan utas saat ini menunggu sampai terbangun, biasanya dengan <>diberitahu</em> atau <em>terganggu</em>, atau sampai sejumlah waktu nyata berlalu. (Diperoleh dari Object) |
| Wait(Int64) |
Menyebabkan utas saat ini menunggu sampai terbangun, biasanya dengan <>diberitahu</em> atau <em>terganggu</em>, atau sampai sejumlah waktu nyata berlalu. (Diperoleh dari Object) |
| Wrap() |
Mengonversi semua jenis primitif ke jenis pembungkus yang sesuai. |
Implementasi Antarmuka Eksplisit
| Nama | Deskripsi |
|---|---|
| IJavaPeerable.Disposed() |
Jenis metode mewakili argumen dan jenis pengembalian yang diterima dan dikembalikan oleh handel metode, atau argumen dan jenis pengembalian yang diteruskan dan diharapkan oleh pemanggil handel metode. (Diperoleh dari JavaObject) |
| IJavaPeerable.Finalized() |
Jenis metode mewakili argumen dan jenis pengembalian yang diterima dan dikembalikan oleh handel metode, atau argumen dan jenis pengembalian yang diteruskan dan diharapkan oleh pemanggil handel metode. (Diperoleh dari JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
Jenis metode mewakili argumen dan jenis pengembalian yang diterima dan dikembalikan oleh handel metode, atau argumen dan jenis pengembalian yang diteruskan dan diharapkan oleh pemanggil handel metode. (Diperoleh dari JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Jenis metode mewakili argumen dan jenis pengembalian yang diterima dan dikembalikan oleh handel metode, atau argumen dan jenis pengembalian yang diteruskan dan diharapkan oleh pemanggil handel metode. (Diperoleh dari JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Jenis metode mewakili argumen dan jenis pengembalian yang diterima dan dikembalikan oleh handel metode, atau argumen dan jenis pengembalian yang diteruskan dan diharapkan oleh pemanggil handel metode. (Diperoleh dari JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Jenis metode mewakili argumen dan jenis pengembalian yang diterima dan dikembalikan oleh handel metode, atau argumen dan jenis pengembalian yang diteruskan dan diharapkan oleh pemanggil handel metode. (Diperoleh dari JavaObject) |
| IJavaPeerable.UnregisterFromRuntime() |
Jenis metode mewakili argumen dan jenis pengembalian yang diterima dan dikembalikan oleh handel metode, atau argumen dan jenis pengembalian yang diteruskan dan diharapkan oleh pemanggil handel metode. |
| ITypeDescriptor+IOfMethod.ChangeParameterType(Int32, Object) |
Jenis metode mewakili argumen dan jenis pengembalian yang diterima dan dikembalikan oleh handel metode, atau argumen dan jenis pengembalian yang diteruskan dan diharapkan oleh pemanggil handel metode. |
| ITypeDescriptor+IOfMethod.ChangeReturnType(Object) |
Jenis metode mewakili argumen dan jenis pengembalian yang diterima dan dikembalikan oleh handel metode, atau argumen dan jenis pengembalian yang diteruskan dan diharapkan oleh pemanggil handel metode. |
| ITypeDescriptor+IOfMethod.DropParameterTypes(Int32, Int32) |
Jenis metode mewakili argumen dan jenis pengembalian yang diterima dan dikembalikan oleh handel metode, atau argumen dan jenis pengembalian yang diteruskan dan diharapkan oleh pemanggil handel metode. |
| ITypeDescriptor+IOfMethod.InsertParameterTypes(Int32, Object[]) |
Jenis metode mewakili argumen dan jenis pengembalian yang diterima dan dikembalikan oleh handel metode, atau argumen dan jenis pengembalian yang diteruskan dan diharapkan oleh pemanggil handel metode. |
| ITypeDescriptor+IOfMethod.ParameterArray() |
Jenis metode mewakili argumen dan jenis pengembalian yang diterima dan dikembalikan oleh handel metode, atau argumen dan jenis pengembalian yang diteruskan dan diharapkan oleh pemanggil handel metode. |
| ITypeDescriptor+IOfMethod.ParameterList() |
Jenis metode mewakili argumen dan jenis pengembalian yang diterima dan dikembalikan oleh handel metode, atau argumen dan jenis pengembalian yang diteruskan dan diharapkan oleh pemanggil handel metode. |
| ITypeDescriptor+IOfMethod.ParameterType(Int32) |
Jenis metode mewakili argumen dan jenis pengembalian yang diterima dan dikembalikan oleh handel metode, atau argumen dan jenis pengembalian yang diteruskan dan diharapkan oleh pemanggil handel metode. |
| ITypeDescriptor+IOfMethod.ReturnType() |
Jenis metode mewakili argumen dan jenis pengembalian yang diterima dan dikembalikan oleh handel metode, atau argumen dan jenis pengembalian yang diteruskan dan diharapkan oleh pemanggil handel metode. |
Metode Ekstensi
| Nama | Deskripsi |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Mendapatkan nama JNI dari jenis instans |
| JavaAs<TResult>(IJavaPeerable) |
Cobalah untuk memaksa |
| JavaCast<TResult>(IJavaObject) |
Melakukan konversi jenis yang diperiksa runtime Android. |
| JavaCast<TResult>(IJavaObject) |
Jenis metode mewakili argumen dan jenis pengembalian yang diterima dan dikembalikan oleh handel metode, atau argumen dan jenis pengembalian yang diteruskan dan diharapkan oleh pemanggil handel metode. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Cobalah untuk memaksa |