-
[자바] 사용시 자주 발생하는 에러와 해결방법자바 2022. 6. 24. 21:18728x90
1. 저장된 변수나 메서드를 찾을 수 없다.
cannot find symbol 또는 cannot resolve symbol
Check Point!
- 선언되지 않은 변수나 메서드를 사용하였나 체크
- 변수 또는 메서드의 이름을 잘못 사용한 경우 체크
- 대소문자 체크2. 세미콜론 ';'이 필요한 곳에 없다.
';' expected
Check Point!
- 이를 잊고 실수하는 경우가 있으니 조심하기
3. main 메서드를 찾을 수 없다.
Exception in thread "main" java.lang.NoSuchMethodError: main
Check Point!
- 클래스 내에 main메서드가 존재하는지 체크
- main메서드의 선언부 ( public static void main(String[] args) ) 에 오타가 있는지 체크
- 대소문자 체크
4. 특정 클래스를 찾을 수 없다.
예시 - Hello 클래스를 찾을 수 없다.
Exception in thread "main" java.lang.NoClassDefFoundError: Hello
Check Point!
- 클래스 'Hello' 의 철자, 특히 대소문자 체크
- 클래스파일 ( *.class) 생성되었는지 체크
- 클래스파일이 존재하는데도 있다면, 클래스패스( classpath )의 설정이 바르게 되었는지 체크
5. 문장 앞부분의 문법이 틀렸다.
illegal start of expression
Check Point!
- 괄호 '(' or '{' 를 열고서 닫지 않았는지 체크
- 수식이나, if문, for문등에 문법적 오류가 있나 체크
- public, static 같은 키워드를 잘못했는지 체크
6. 키워드 class, interface 또는 enum이 없다.
class, interface, or enum expected
Check Point!
- 보통 괄호 '{' 또는 '}'의 개수가 일치하지 않는지 체크
7. 큰 타입에서 작은 타입으로서의 형변환은 값 손실 발생할 수 있다.
imcompatible types: possible lossy conversion from int to byte
Check Point!
- 명시적으로 형변환 해주기 ex) char ch = (char)1000;
8. 배열의 인덱스가 유효한 범위를 넘었다.
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException : 7
Check Point!
- 7번째의 인덱스 값이 있는지 체크
9. 복사하려는 배열의 위치가 적절하지 못하여 내용보다 여유 공간이 적다
ArrayIndexOutOfBoundsException
Check Point!
- 복사하려는 배열의 공간 크기 체크
10. 오버로딩된 메서드가 구분되지 않아서 발생
VarArgsEx. java:5: error: reference to 함수이름 is ambigious
Check Point!
- 가변인자로는 오버로딩된 메소드를 구현하면 이런 에러가 뜨는 경우가 많으니, 되도록 가변인자를 사용한 메소드는 오버로딩하지 않는게 좋다.
11. 무한호출
java.lang.StackOverflowError
Check Point!
- main메서드가 종료되지 않고 호출스택에 계속 쌓이게 되면서 생긴것으로, 재귀호출시 종료 조건을 꼭 써주기
12. 조상 클래스의 클래스 생성자를 찾을 수 없음 ( 상속을 받는 경우 )
java:숫자: cannot resolve symbol
symbol : 조상 클래스의 생성자()Check Point!
- 모든 클래스의 생성자는 반드시 첫줄에 자신의 다른 생성자 또는 조상의 생성자를 호출해야하는데 했는지 체크
- 컴파일러가 자동적으로 super(); 을 생성하기에 조상 클래스를 잘 찾았는지 체크
- 모든 클래스의 최상위 클래스는 Object이므로, 첫줄에 반드시 필요!
제일 중요한것은, 에러가 발생했을 때에는 에러 메세지를 잘 읽어보자
'자바' 카테고리의 다른 글
[자바] 배열 (0) 2022.06.28 [자바] JDK1.5 이후 향상된 for문 (0) 2022.06.27 [자바] 변수 (0) 2022.06.25 [자바] 기본적인 개념 정리 (0) 2022.06.24 [자바] Homebrew로 자바설치하기 (0) 2022.06.23