Rumah > Java > javaTutorial > teks badan

Apakah yang menyebabkan ralat 'Tidak dapat mencari simbol' di Jawa?

王林
Lepaskan: 2023-08-19 12:37:26
ke hadapan
4724 orang telah melayarinya

在Java中,什么原因会导致"Cannot find symbol"错误?

Setiap kali anda perlu menggunakan kelas/antara muka luaran (sama ada ditentukan pengguna atau terbina dalam) dalam program semasa, anda perlu mengimport kelas ini ke dalam program semasa menggunakan kata kunci import.

Tetapi, semasa mengimport mana-mana kelas:

  • Jika laluan kelas/antara muka yang anda import tidak tersedia untuk JVM.

  • Jika nama kelas mutlak yang anda nyatakan dalam penyata import tidak tepat (termasuk pakej dan nama kelas).

  • Jika anda telah mengimport kelas/antara muka yang digunakan.

Anda akan menerima pengecualian yang menunjukkan "Tidak dapat mencari simbol..."

Contoh

Dalam contoh berikut, kami cuba membaca dari papan kekunci (System.in) yang mewakili String nama pengguna nilai. Untuk tujuan ini, kami menggunakan kelas pengimbas pakej Java.Util.

public class ReadingdData {
   public static void main(String args[]) {
      System.out.println("Enter your name: ");
      Scanner sc = new Scanner(System.in);
      String name = sc.next();
      System.out.println("Hello "+name);
   }
}
Salin selepas log masuk

Ralat masa kompilasi

Kerana kami menggunakan kelas yang dipanggil Pengimbas dalam program tetapi tidak mengimportnya dalam program. Semasa pelaksanaan, program menjana ralat masa kompilasi berikut:

ReadingdData.java:6: error: cannot find symbol
      Scanner sc = new Scanner(System.in);
      ^
   symbol: class Scanner
   location: class ReadingdData
ReadingdData.java:6: error: cannot find symbol
      Scanner sc = new Scanner(System.in);
      ^
   symbol: class Scanner
   location: class ReadingdData
2 errors
Salin selepas log masuk

Penyelesaian

  • Anda perlu menetapkan laluan kelas untuk fail JAR yang mengandungi antara muka kelas yang diperlukan.

  • Gunakan kata kunci import untuk mengimport kelas yang diperlukan daripada pakej. Apabila mengimport, anda perlu menentukan nama mutlak kelas yang diperlukan (termasuk pakej dan subpakej).

Contoh

Demo dalam talian

import java.util.Scanner;
public class ReadingdData {
   public static void main(String args[]) {
      System.out.println("Enter your name: ");
      Scanner sc = new Scanner(System.in);
      String name = sc.next();
      System.out.println("Hello "+name);
   }
}
Salin selepas log masuk

Output

Enter your name:
krishna
Hello krishna
Salin selepas log masuk

Atas ialah kandungan terperinci Apakah yang menyebabkan ralat 'Tidak dapat mencari simbol' di Jawa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:tutorialspoint.com
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan