>Java >java지도 시간 >Java에서 \'\'.class\' 예상\' 오류가 발생하는 이유는 무엇이며 어떻게 해결할 수 있나요?

Java에서 \'\'.class\' 예상\' 오류가 발생하는 이유는 무엇이며 어떻게 해결할 수 있나요?

Barbara Streisand
Barbara Streisand원래의
2024-11-20 00:33:03929검색

Why am I getting the

"'.class' 예상" 오류 이해 및 해결

Java에서 코드를 컴파일하는 동안 개발자는 수수께끼 같은 오류 메시지 " '.class'가 필요합니다." 이 오류는 초보자와 숙련된 프로그래머 모두에게 당황스러울 수 있습니다. 그 의미와 원인, 효과적인 해결 방법을 파헤쳐 보겠습니다.

의미와 원인

컴파일러가 유형( 예를 들어 int, int[]) 표현식을 예상하는 경우입니다. 이 이상한 동작은 구문 검사 중 컴파일러의 혼란으로 인해 마침표(.) 뒤에 클래스 선언이 필요하게 됩니다.

다음은 몇 가지 예입니다. 오류:

double d = 1.9;
int i = int d;  // error here
int j = someFunction(int[] a);  // error here

두 경우 모두 컴파일러는 "오류: '.class'가 필요합니다."라고 불평합니다.

해결 방법

'.class'를 추가하라는 도움이 되지 않는 '제안'은 거의 항상 올바르지 않습니다. 대신 실제 솔루션은 코드에 있는 유형의 의도된 목적에 따라 다릅니다.

1. 유형 캐스팅:

유형 캐스팅을 수행하려는 의도인 경우 유형을 괄호로 묶습니다.

double d = 1.9;
int i = (int) d;   // Correct: casts `1.9` to an integer

2. 변수 할당 또는 매개변수 전달:

일반적으로 단순 할당 또는 매개변수 전달의 경우 유형을 제거해야 합니다.

int j = someFunction(a);  // Correct ... assuming `a`'s type is suitable for the call

추가 예

틀림:

someMethod(array[]);

맞음:

someMethod(array);                  // pass ref to array
someMethod(array[someExpression]);  // pass array element

틀림:

int i = someMethod(int j); 

맞음:

int i = someMethod(j);

틀림:

int i = int(2.0);

맞음:

int i = (int) 2.0;

틀림:

int[]; letterCount = new int[26];

맞음:

int[] letterCount = new int[26];

틀림:

if (someArray[] > 80) {
    // ...
}

맞음:

if (someArray[someIndex] > 80)

틀림:

int[] integers = new int[arraySize];
...
return integers[];

맞음:

return integers;             // Return entire array
return integers[someIndex];  // Return array element

틀림:

if ((withdraw % 5 == 0) & (acnt_balc >= withdraw + 0.50))
    double cur = acnt_balc - (withdraw + 0.50);
    System.out.println(cur);
else
    System.out.println(acnt_balc);

맞음:

if ((withdraw % 5 == 0) & (acnt_balc >= withdraw + 0.50)) {
    double cur = acnt_balc - (withdraw + 0.50);
    System.out.println(cur);
} else {
    System.out.println(acnt_balc);
}

위 내용은 Java에서 ''.class' 예상' 오류가 발생하는 이유는 무엇이며 어떻게 해결할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.