자주나오는 에러

a991102(39)
Published in
#java
Words
274
Reading
2 min
Listen
Play
9y
  1. cannot find symbol 또는 cannot resolve symbol

지정된 변수나 메서드를 찾을 수 없다는 뜻으로 선언되지 않은 변수나 메서드를 사용하거나, 변수 또는 메서드의 이름을 잘못 사용한 경우에 발생한다. 자바에서는 대소문자 구분을 하기 때문에 철자 뿐 만 아니라 대소문자의 일치여부도 꼼꼼하게 확인해야 합니다.

  1. ';' expected

세미콜론 ';'이 필요한 곳에 없다는 뜻이다. 자바의 모든 문장의 끝에는 ';'을 붙여주어야 하는데 가끔 이를 잊고 실수하기 쉬우니 조심하세요

  1. Exception in thread "main" java.lang.NoSuchMethodError : main

'main 메서드를 찾을 수 없다.' 는 뜻으로 실제로 클래스 내에 main 메서드가 존재하지 않거나 메서드의 선언부 'public static void main(String[] args)' 에 오타가 존재하는 경우에 발생합니다.

이 에러의 해결방버븐 main메서드가 크래스에 정의되어 있는지 확인하고, 정의되어 있다면 main 메서드의 선언부에 오타가 없는지 확인한다. 자바는 대소문자를 구별하므로 대소문자의 일치여부까지 정확힉 확인해야 합니다.

4.Exception in thread "main" java.lang.NoClassDefFoundError : Hello

'Hello'라는 클래스를 찾을 수 없다. 는 뜻이다.클래스 'hello'의 철자 특히 대소문자를 확인해보고 이상이 없으면 클래스파일(.class))이 생성되었는지 확인해봐야 합니다.

예를 들어 'Hello.java' 가 정상적으로 컴파일 되었다면 클래스 파일 Hello.class가 있어야 한다. 클래스파일이 존재하는데도 동일한 메시지가 반복해서 나타난다면 클래스패스의 설정이 바르게 되었는지 다시 확인해 보자 (패키지 내에 클래스 파일이 잘 들어있는지 확인할 필요가 있습니다.

  1. illegal start of expression

직역하면 문장의 앞부분이 문법에 맞지 않는다는 의미인데, 간단히 말해서 문장에 문법적 오류가 있다는 뜻이다. 괄오의 열고 닫음이나 if문, for,문 등에 문법적 오류가 있을 때 또는 pbulic 이나 static 과 같은 키워드를 잘못 사용한 경우에도 발생한다. 에러가 발생한 곳이 문법적으로 옳은지 확인해보세요 !

  1. class, interface, or enum expected

이 메시지의 의미는 '키워드 class나 inteface 또는 enum이 없다' 이지만 보통 괄호의 개수가 일치하지 않는 경우에 발생한다. 열린괄호와 닫힌 괄호의 갯수가 같은지 확인해봐요 ㅎㅎ

위 내용은 제가 어제부터 공부중인 "자바의 정석" 안에서 배운것들을 정리한것입니다.

부족한 내용이지만 도움되시는 있길 바라겠습니다!

다음에는 더좋은 내용을들고 오겠습니다 ! ㅎㅎ

자주나오는 에러 | Ecency