Bagaimana untuk Menggunakan Kaedah Java.lang.Class.getMethod()?

Bagaimana Untuk Menggunakan Kaedah Java Lang Class Getmethod



Pengaturcara menggunakan ' java.lang.Class.getMethod() ” kaedah untuk mendapatkan semula objek yang mewakili kaedah awam tertentu yang diisytiharkan oleh kelas super. Kaedah ini membenarkan pemeriksaan dinamik dan manipulasi kelas, antara muka, kaedah dan entiti lain pada masa jalan. Ini bermakna pengaturcara tidak perlu mengetahui tentang pengetahuan masa kompilasi struktur kelas.

Panduan ini menawarkan penjelasan terperinci tentang penggunaan kaedah java.lang.class.getMethod() dalam Java.







Bagaimana untuk Menggunakan Kaedah Java.lang.Class.getMethod()?

Kaedah getMethod() ialah sebahagian daripada API refleksi Java, yang menawarkan pengaturcara untuk memeriksa dan menggunakan kaedah secara dinamik. Ia membolehkan pengaturcara memanggil kaedah dengan nama atau tandatangan yang berbeza bergantung pada keadaan masa jalan.



Sintaks



Sintaks untuk ' getMethod() ” kaedah dalam bahasa Java ditunjukkan di bawah:





Kaedah awam getMethod ( String selectedmethodName, Class [ ] jenis parameter )
membuang NoSuchMethodException, SecurityException

Penerangan sintaks di atas:



  • Ia menerima dua parameter yang mengenal pasti nama kaedah yang dipilih dan tatasusunan jenis parameter yang sepadan.
  • Ia mengembalikan kaedah kelas yang diminta.
  • Kaedah ini membuang ' NoSuchMethodException ” dan “ SecurityException ” pengecualian mengikut situasi

Sekarang, mari kita lawati contoh di bawah, untuk mendapatkan pemahaman yang lebih baik tentang kaedah Java.lang.Class.getMethod().

Contoh: Penggunaan Kaedah getMethod().

Untuk menggunakan ' getMethod() ” kaedah untuk mendapatkan semula data tentang kaedah tertentu, lihat blok kod di bawah:

import java.util. * ;

UseCase kelas awam {
kekosongan awam unik ( ) { }
utama lompang statik awam ( Tali [ ] args ) // penciptaan utama ( ) kaedah
membuang ClassNotFoundException, NoSuchMethodException
{
Kelas newcl = Class.forName ( 'Kes Penggunaan' ) ;
System.out.println ( 'Kelas dikenal pasti oleh newcl: ' ' + newcl.toString ( ) + ''' ) ;

String mname = 'unik' ;
Kelas [ ] pType = null;
// menggunakan getMethod ( ) kaedah
System.out.println ( ''' + Saya gembira + '' Kaedah newcl: ' ' + newcl.getMethod ( nama, pType ) + ''' ) ;
}
}

Penerangan blok kod di atas:

  • Mula-mula, buat kelas bernama ' UseCase ”, dan mengisytiharkan kaedah awam bernama “ unik() ”.
  • Seterusnya, isytiharkan dua pengecualian yang boleh dilemparkan oleh program di dalam ' utama() ” kaedah.
  • Sekarang, gunakan ' forName() ' kaedah untuk mendapatkan semula kelas ' UseCase ”. Selepas itu, kembalikan objek kelas yang dipautkan dengan nama kelas yang disediakan dan paparkan kelas yang diambil pada konsol.
  • Kemudian, simpan nama kaedah yang diperlukan sebagai nilai kepada ' gembira ” pembolehubah. Juga, tetapkan nilai ' null ' kepada ' pType ” pembolehubah yang menunjukkan bahawa kaedah yang akan diambil tidak mempunyai sebarang parameter.
  • Selepas itu, panggil ' getMethod() ' kaedah menggunakan ' nuklear ” objek dan lulus pembolehubah “mname” dan “pType” sebagai parameter. Pada akhirnya, menyerlahkan maklumat tentang kaedah yang dikehendaki pada konsol.

Selepas tamat fasa pelaksanaan:

Gambar menunjukkan bahawa kaedah getMethod() digunakan untuk mendapatkan semula maklumat kaedah yang dipilih.

Kesimpulan

Tiga pengecualian ' NoSuchMethodException ”, “ NullPointerException ” dan “ SecurityException ” boleh dilempar dengan menggunakan “ java.lang.Class.getMethod() ” kaedah. Kaedah ini adalah berharga untuk penyembahan kaedah dinamik, dan pengaturcaraan berasaskan refleksi. Dan dalam senario di mana pengaturcara perlu menemui dan berinteraksi dengan kaedah semasa runtime. Itu sahaja, tentang penggunaan kaedah java.lang.Class.getMethod() dalam Java.