Rumah  >  Artikel  >  Java  >  Kaedah untuk menyelesaikan parameter kaedah Java yang tiada pengecualian (MissingMethodArgumentException)

Kaedah untuk menyelesaikan parameter kaedah Java yang tiada pengecualian (MissingMethodArgumentException)

WBOY
WBOYasal
2023-08-19 20:35:081556semak imbas

Kaedah untuk menyelesaikan parameter kaedah Java yang tiada pengecualian (MissingMethodArgumentException)

Bagaimana untuk menyelesaikan pengecualian parameter kaedah Java yang hilang (MissingMethodArgumentException)

Dalam pengaturcaraan Java, kita sering menghadapi pengecualian parameter kaedah yang hilang, iaitu, MissingMethodArgumentException. Pengecualian ini biasanya berlaku kerana senarai parameter kaedah tidak konsisten dengan senarai parameter yang diluluskan apabila kaedah dipanggil. Untuk menyelesaikan masalah ini, kita boleh mengambil beberapa kaedah.

Kaedah 1: Semak sama ada panggilan kaedah adalah betul
Sebab yang paling biasa ialah parameter yang diluluskan semasa kaedah dipanggil tidak sepadan dengan parameter yang ditentukan oleh kaedah. Kita boleh menyemak semula sama ada panggilan kaedah adalah betul, termasuk jenis, nombor dan susunan parameter. Jika anda menemui masalah, anda perlu mengubah suai senarai parameter panggilan kaedah.

Sebagai contoh, jika terdapat kaedah yang ditakrifkan seperti berikut:

public void printInfo(String name, int age) {

System.out.println("Name: " + name + ", Age: " + age);

}

Parameter yang diluluskan semasa memanggil kaedah ini ialah rentetan nama dan integer umur:

printInfo("Tom", 20);

Jika parameter yang dihantar semasa memanggil tidak sepadan dengan parameter kaedah yang ditentukan, MissingMethodArgumentException akan dilemparkan.

Kaedah 2: Gunakan Kaedah Lebih Muatan
Jika kita mentakrifkan berbilang kaedah dengan nama kaedah yang sama tetapi senarai parameter yang berbeza dalam kelas, iaitu kaedah lebih muatan, maka kita boleh menggunakan jenis dan kuantiti parameter yang berbeza untuk memilih kaedah untuk dipanggil.

Sebagai contoh, kami berharap kami boleh menghantar rentetan nama untuk memanggil kaedah printInfo, dan kami juga berharap kami boleh memasukkan kedua-dua rentetan nama dan integer umur untuk memanggil kaedah printInfo. Kami boleh melakukan lebihan muatan kaedah:

public void printInfo(String name) {

System.out.println("Name: " + name);

}

public void printInfo(String name, int age) {

System.out.println("Name: " + name + ", Age: " + age);

}

Dengan cara ini, kita boleh menggunakan parameter yang berbeza kaedah yang berbeza untuk mengelakkan berlakunya MissingMethodArgumentException.

Kaedah 3: Gunakan parameter berubah
Jika kami tidak pasti tentang bilangan parameter, kami boleh menggunakan parameter berubah (Varargs) untuk menyelesaikannya. Parameter pembolehubah boleh melepasi berbilang parameter melalui tatasusunan.

Sebagai contoh, kami berharap kaedah printInfo boleh menerima sebarang bilangan parameter dan mencetaknya:

public void printInfo(String... infos) {

for (String info : infos) {
    System.out.println(info);
}

}

Dengan cara ini, kami boleh lulus dalam mana-mana bilangan parameter untuk memanggil kaedah printInfo, contohnya:

printInfo("Tom");
printInfo("Tom", "20");
printInfo("Tom", "20", "Male"); Tidak kira bilangan parameter yang diluluskan adalah Tidak kira berapa banyak, MissingMethodArgumentException tidak akan berlaku.

Ringkasan:

Apabila menyelesaikan pengecualian parameter kaedah Java yang hilang, kami boleh menyemak sama ada panggilan kaedah adalah betul dan mengubah suai senarai parameter panggilan kaedah kami juga boleh menggunakan kaedah lebihan untuk memilih kaedah yang akan dipanggil berdasarkan berbeza jenis dan kuantiti parameter; kita juga boleh Menggunakan argumen variadic, menerima sebarang bilangan argumen. Kaedah di atas adalah penyelesaian biasa Bergantung pada keperluan dan senario tertentu, kita boleh memilih kaedah yang berbeza untuk menyelesaikan masalah.


Saya harap artikel ini dapat memberikan sedikit bantuan kepada pembaca apabila menyelesaikan pengecualian parameter kaedah Java yang hilang.

Atas ialah kandungan terperinci Kaedah untuk menyelesaikan parameter kaedah Java yang tiada pengecualian (MissingMethodArgumentException). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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