Rumah > Java > javaTutorial > Bagaimanakah Saya Boleh Mencipta Kejadian Java Secara Dinamik?

Bagaimanakah Saya Boleh Mencipta Kejadian Java Secara Dinamik?

Mary-Kate Olsen
Lepaskan: 2024-11-25 13:24:15
asal
649 orang telah melayarinya

How Can I Create Java Instances Dynamically?

Mencipta Kejadian Secara Dinamik dalam Java

Menginstanti kelas mengikut nama ialah senario yang sering ditemui dalam pengaturcaraan. Java menyediakan pelbagai cara untuk mencapai ini.

Kaedah 1: Untuk Kelas dengan Pembina Tanpa Arg

Untuk kelas tanpa pembina tanpa hujah (no-arg), Kaedah Class.forName() boleh digunakan. Ia mengembalikan objek Kelas dan kaedah newInstance() seterusnya mencipta tika kelas yang ditentukan.

Class<?> clazz = Class.forName("java.util.Date");
Object date = clazz.newInstance();
Salin selepas log masuk

Kaedah 2: Pendekatan Lebih Serbaguna

Ini kaedah lebih disukai apabila kelas mungkin tidak mempunyai pembina no-arg. Ia melibatkan mendapatkan objek Pembina dan kemudian menggunakan kaedah newInstance()nya.

Class<?> clazz = Class.forName("com.foo.MyClass");
Constructor<?> constructor = clazz.getConstructor(String.class, Integer.class);
Object instance = constructor.newInstance("stringparam", 42);
Salin selepas log masuk

Pertimbangan

Kedua-dua kaedah menggunakan pantulan, yang boleh menyebabkan pengecualian jika:

  • JVM gagal mencari atau memuatkan yang ditentukan kelas.
  • Kelas tidak mempunyai pembina yang sesuai.
  • Pembina membuang pengecualian.
  • Pembina tidak diisytiharkan awam.
  • Pengurus keselamatan mengehadkan refleksi .

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencipta Kejadian Java Secara Dinamik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan