728x90
728x90
이 게시글은 남궁성의 정석코딩 - 자바의 정석 기초편(2020최신)을 보고 공부한 내용을 정리한 게시글입니다.
틀린 내용이 있을 수 있습니다.
✔ 프로그램 오류
컴파일 에러, 런타임 에러, 논리적 에러가 있다.
▪ 컴파일 에러(compile-time error)
- 컴파일 할 때 발생하는 에러, 고치기 전까지는 실행할 수 없다
- 자바 컴파일러는 구문체크, 번역, 최적화, 생략된 코드를 추가해준다.
public class Main {
public static void main(final String[] args) {
system.out.println(args[0]);
}
}
// 컴파일 에러 발생, System의 s가 소문자이다.
▪ 런타임 에러(runtime error)
- 실행 할 때 발생하는 에러, 실행하다가 에러가 발생해 프로그램이 죽는다.
public class Main {
public static void main(final String[] args) {
system.out.println(args[0]);
}
}
// 런타임 에러 발생, 없는 값을 호출했기 때문이다.
/*
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: Index 0 out of bounds for length 0
at Main.main(Main.java:3)
*/
※ 런타임 에러의 종류
- 에러(error) : 프로그램 코드에 의해서 수습될 수 없는 심각한 오류 (ex. 메모리 부족으로 죽는 에러 등)
- 예외(exception) : 프로그램 코드에 의해서 수습될 수 있는 다소 미약한 오류
⇒ 에러는 어쩔 수 없지만, 예외는 처리하자. (예외처리)
▪ 논리적 에러(logical error)
- 작성 의도와 다르게 동작, 프로그램이 실행은 하는데, 하는데 의도와 다르게 실행된다.
728x90
728x90
'💻 Study > Java' 카테고리의 다른 글
[Java] 예외클래스1_예외처리, try-catch문, 예외선언(throws) (0) | 2023.02.28 |
---|---|
[Java] 객체지향개념18_외부 클래스, 내부 클래스, 익명 클래스 (0) | 2023.02.27 |
[Java] 객체지향개념16_인터페이스(2) (0) | 2023.02.21 |