Apa itu refleksi, dan mengapa itu berguna? Saya khususnya tertarik pada Java, tetapi saya berasumsi prinsipnya sama dalam bahasa apa
Refleksi adalah kemampuan suatu program untuk mengamati dan / atau memodifikasi struktur dan / atau perilakunya pada saat runtime. Refleksi tergantung pada bahasa pemrograman pendukung - harap beri tag pada bahasa pemrograman yang digunakan saat menggunakan tag ini.
Apa itu refleksi, dan mengapa itu berguna? Saya khususnya tertarik pada Java, tetapi saya berasumsi prinsipnya sama dalam bahasa apa
Karena penerapan generik Java, Anda tidak dapat memiliki kode seperti ini: public class GenSet<E> { private E a[]; public GenSet() { a = new E[INITIAL_ARRAY_LENGTH]; // error: generic array creation } } Bagaimana saya bisa menerapkan ini sambil menjaga keamanan jenis? Saya melihat...
Apa cara terbaik untuk memanggil metode generik ketika parameter tipe tidak diketahui pada waktu kompilasi, tetapi sebaliknya diperoleh secara dinamis saat runtime? Pertimbangkan kode contoh berikut - di dalam Example()metode, apa cara paling ringkas untuk memohon
Saya mencoba menerapkan transformasi data menggunakan contoh Reflection 1 dalam kode saya. The GetSourceValuefungsi memiliki saklar membandingkan berbagai jenis, tapi saya ingin menghapus jenis dan sifat dan memiliki GetSourceValuemendapatkan nilai dari properti hanya menggunakan satu string...
Apakah ada cara untuk mendapatkan jalur untuk perakitan tempat kode saat ini berada? Saya tidak ingin jalur majelis panggilan, hanya yang berisi kode. Pada dasarnya tes unit saya perlu membaca beberapa file uji xml yang terletak relatif terhadap dll. Saya ingin path untuk selalu menyelesaikan...
Seseorang mungkin tidak selalu mengetahui Typeobjek pada saat kompilasi, tetapi mungkin perlu membuat instance dari Type. Bagaimana Anda mendapatkan instance objek baru dari
Jika saya memiliki dua variabel: Object obj; String methodName = "getName"; Tanpa mengetahui kelasnya obj, bagaimana saya bisa memanggil metode yang diidentifikasi methodNameolehnya? Metode yang dipanggil tidak memiliki parameter, dan Stringnilai balik. Ini pengambil untuk kacang Jawa...
Bagaimana cara saya mendapatkan daftar semua properti
Bagaimana saya bisa memeriksa apakah suatu variabel didefinisikan dalam Ruby? Apakah ada issetmetode tipe yang
Apakah refleksi dalam C#menawarkan cara untuk menentukan apakah beberapa System.Typemodel yang diberikan beberapa antarmuka? public interface IMyInterface {} public class MyType : IMyInterface {} // should yield 'true' typeof(MyType)./* ?????
Menggunakan refleksi, bagaimana saya bisa mendapatkan semua jenis yang mengimplementasikan antarmuka dengan C # 3.0 / .NET 3.5 dengan kode paling sedikit, dan meminimalkan iterasi? Inilah yang ingin saya tulis ulang: foreach (Type t in this.GetType().Assembly.GetTypes()) if (t is IMyInterface)...
Apakah mungkin untuk menemukan semua kelas atau antarmuka dalam paket yang diberikan? (Dengan cepat melihat misalnya Package, sepertinya
Saya menggunakan refleksi untuk mengulangi Typeproperti a dan mengatur tipe tertentu ke default. Sekarang, saya bisa melakukan saklar pada jenis dan mengatur default(Type)secara eksplisit, tetapi saya lebih suka melakukannya dalam satu baris. Apakah ada program yang setara dengan
Bagaimana saya bisa mencapai ini? public class GenericClass<T> { public Type getMyType() { //How do I return the type of T? } } Semua yang saya coba sejauh ini selalu mengembalikan tipe Objectdaripada tipe spesifik yang
Saya ingin tahu apakah mungkin untuk mendapatkan atribut dari enumnilai dan bukan dari nilai enumitu sendiri? Sebagai contoh, misalkan saya memiliki yang berikut ini enum: using System.ComponentModel; // for DescriptionAttribute enum FunkyAttributesEnum { [Description("Name With Spaces1")]...
Saya memiliki kelas yang dirancang dengan buruk di pihak ke-3 JARdan saya perlu mengakses salah satu bidang pribadinya . Sebagai contoh, mengapa saya harus memilih bidang pribadi? class IWasDesignedPoorly { private Hashtable stuffIWant; } IWasDesignedPoorly obj = ...; Bagaimana saya bisa...
Saya memiliki kelas dengan private static finalbidang yang, sayangnya, saya perlu mengubahnya saat dijalankan. Menggunakan refleksi saya mendapatkan kesalahan ini: java.lang.IllegalAccessException: Can not set static final boolean field Apakah ada cara untuk mengubah nilainya? Field hack =...
Apakah ada cara untuk mendapatkan nama metode yang sedang dijalankan di
Jika saya memiliki kelas yang dipanggil MyProgram, apakah ada cara untuk mengambil " MyProgram " sebagai
Manakah dari berikut ini yang lebih baik? a instanceof B atau B.class.isAssignableFrom(a.getClass()) Satu-satunya perbedaan yang saya tahu adalah, ketika 'a' adalah null, yang pertama mengembalikan false, sedangkan yang kedua melempar pengecualian. Selain itu, apakah mereka selalu memberikan...