1 Minutes      April 17, 2022      Programming Programming/Others

Merubah Objek Java dari Kelas Objek Dinamis ke Kelas Objek Asli

Tulisan seperti dibawah ini saya yakin sudah banyak sekali bertebaran di internet, namun mungkin suatu saat nanti jika saya membutuhkannya lagi bisa dengan mudah saya temukan - menulis untuk menjaga pengetahuan -.

Ketika mengkoding di Java pernah saya memakai inisiasi class dengan cara dinamis, inisiasi dengan memakai nama kelas (class name) di variabel string. Kebutuhan membuat objek dari sebuah kelas secara dinamis kadang sebagai jalan keluar paling optimal ketika membuat aplikasi.

Jadi saya mempunyai nama kelas Java di variabel string dan membuat object dari kelas tersebut secara dinamis dengan cara berikut:

String namaKelas = "com.alfanla.MyClass";   
Class kelas = Class.forName(namaKelas);

Object objek = kelas.getConstructor().newInstance();

Permasalahannya adalah bagaimana kita dapat mengkonversi otomatis variabel objek diatas ke objek MyClass jika isi namaKelas dapat berubah-ubah (dinamis) sehingga kita bisa memanggil method di dalam class tersebut? Berikut syntax yang biasa saya gunakan:

Object newObjek = Class.forName(namaKelas).cast(objek);

Namun apabila isi namaKelas tidak dinamis, dengan mudah dapat menggunakan reflection:

MyClass newObjek = MyClass.class.cast(objek);
Mendapatkan Dimensi Gambar dari Resource di AndroidGenerate Date Series and Joining to Another Table in SQL Server
Comments
comments powered by Disqus