> Java > java지도 시간 > 본문

Java에서 '기호를 찾을 수 없습니다' 오류가 발생하는 이유는 무엇입니까?

王林
풀어 주다: 2023-08-19 12:37:26
앞으로
4753명이 탐색했습니다.

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

현재 프로그램에서 외부 클래스/인터페이스(사용자 정의 또는 내장 여부)를 사용해야 할 때마다 import 키워드를 사용하여 이러한 클래스를 현재 프로그램으로 가져와야 합니다.

그러나 클래스를 가져오는 동안:

  • 가져온 클래스/인터페이스의 경로를 JVM에서 사용할 수 없는 경우.

  • import 문에 언급한 절대 클래스 이름이 정확하지 않은 경우(패키지 및 클래스 이름 포함)

  • 사용된 클래스/인터페이스를 가져온 경우.

다음 예에서는 "기호를 찾을 수 없습니다..."라는 예외가 표시됩니다.

Example

다음 예에서는 사용자 이름 문자열을 나타내는 키보드(System.in)에서 읽으려고 합니다. 값. 이를 위해 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);
   }
}
로그인 후 복사

컴파일 시간 오류

프로그램에서 Scanner라는 클래스를 사용하고 있지만 프로그램에서 가져오지 않기 때문입니다. 실행 시 프로그램은 다음과 같은 컴파일 시간 오류를 생성합니다.

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
로그인 후 복사

Solution

  • 필요한 클래스 인터페이스가 포함된 JAR 파일의 클래스 경로를 설정해야 합니다.

  • 패키지에서 필요한 클래스를 가져오려면 import 키워드를 사용하세요. 가져올 때 필요한 클래스(패키지 및 하위 패키지 포함)의 절대 이름을 지정해야 합니다.

온라인 데모

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);
   }
}
로그인 후 복사

Output

Enter your name:
krishna
Hello krishna
로그인 후 복사

위 내용은 Java에서 '기호를 찾을 수 없습니다' 오류가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:tutorialspoint.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿