Di Java, menghadapi senario kod di mana dua kelas dengan nama yang sama boleh diimport adalah perkara biasa. Keadaan ini boleh membawa kepada kekaburan dan kekeliruan jika tidak dikendalikan dengan betul.
Bayangkan mempunyai coretan kod berikut:
import java.util.Date; import my.own.Date; class Test { public static void main(String[] args) { // Prefer your own Date class .. // Prefer util.Date class } }
Dalam contoh ini, kedua-dua kelas Tarikh diimport, tetapi tugasnya adalah untuk selektif instantiate sama ada kelas my.own.Date anda sendiri atau java.util.Date standard kelas.
Menangani isu ini memerlukan salah satu pendekatan berikut:
Anda boleh menggunakan kelas yang layak sepenuhnya secara eksplisit nama untuk menentukan kelas Tarikh yang anda mahu gunakan, menghapuskan mana-mana kekaburan.
java.util.Date javaDate = new java.util.Date(); my.own.Date myDate = new my.own.Date();
Pilihan lain ialah meninggalkan penyata import dan merujuk kepada kelas menggunakan laluan mereka yang layak sepenuhnya.
Test.java.util.Date javaDate = new Test.java.util.Date(); Test.my.own.Date myDate = new Test.my.own.Date();
Semasa menggunakan nama kelas yang layak sepenuhnya atau meninggalkan penyata import menyelesaikan masalah konflik nama kelas, ia boleh membawa kepada kod bertele-tele dan kurang boleh dibaca. Oleh itu, adalah penting untuk menilai kebaikan dan keburukan dengan teliti sebelum membuat keputusan.
Selain itu, pertimbangkan sama ada mempunyai dua kelas dengan nama yang sama adalah perlu. Secara amnya, adalah amalan yang baik untuk mengelak daripada menggunakan nama kelas yang sama untuk mengurangkan kemungkinan kekeliruan dan mengekalkan kejelasan kod.
Atas ialah kandungan terperinci Bagaimana Mengendalikan Pertembungan Nama Kelas Semasa Mengimport di Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!