Q1. 자바에서 예외를 처리하는데는 어떤 블록이 사용되는가?
- try~catch 블록을 사용한다.
Q2. 자바의 Exception에는 어떤 어떤 종류가 있는가?
- Checked Exception, Unchecked Exception(RuntimeException)이 있다.
Q3. 자바의 Exception 클래스는 무슨 클래스를 상속받는가?
- Throwable 클래스를 상속 받는다.
Q4. 자바의 RuntimeException 클래스는 언제 exception이 throw되는가?
-
Q5. finally 구문의 의미는 무엇인가?
- finally 블록에 포함된 영역이 무조건 실행되어야 함을 의미한다.
Q6. 두 개 이상의 catch문을 작성할 때, Exception 클래스는 어디에 작성하는게 좋은가?
왜 그러한가?
- 맨 아래에 작성하는 것이 좋다. 왜냐하면 Exception 클래스는 모든 예외 클래스의 부모 클래스이므로,
위에 작성하면 다른 예외 클래스들이 동작하지 않기 때문이다.
Q7. NullPointerException 클래스는 어떤 기능을 하는가? 그리고 어떤 클래스를 상속하는가?
- 객체가 아직 할당이 안되었거나, null인 경우 예외를 반환한다.
RuntimeException 클래스를 상속한다.
Q8. ArrayIndexOutOfBoundsException 클래스는 어떤 기능을 하는가? 그리고 어떤 클래스를 상속하는가?
- 배열의 인덱스를 넘어선 위치에 접근할 때, 예외를 반환한다.
RuntimeException 클래스를 상속한다.
Q9. 자바에 존재하는 총 3가지 종류의 예외는 무엇인가?
- 에러, Checked Exception, Unchecked Exception(RuntimeException)이다.
Q10. 에러란 어떤 예외를 의미하는가?
- 프로그램 밖에서 발생한 예외를 의미한다.
Q11. Error와 Exception으로 끝나는 오류의 가장 큰 차이는 무엇인가?
- Error는 프로그램 밖에서, Exception은 프로그램 안에서 발생한 오류이다.
Q12. IOException은 어떤 기능을 하는가? 그리고 어떤 클래스를 상속 받는가?
- IO 과정에서 문제가 발생했을 때, 예외를 반환한다. Exception 클래스를 상속 받는다.
Q13. 모든 예외의 할아버지는 어떤 클래스인가?
- Throwable 클래스이다.
Q14. Throwable 클래스에서 가장 많이 사용되는 메소드는 무엇 무엇인가?
- getString(), printStackTrace()이다.
Q15. 자바에서는 사용자 정의 Exception을 만들 수 있는가?
만든다면 어떻게 만들 수 있는가?
MyException 클래스와 CustomException 클래스로 표현해보자.
- 만들 수 있다.
public class MyException{
public MyException(){
super();
}
public MyException(String message){
super(message);
}
}
참고
Q1~Q15 자바의 신, 5/28
Exception (Java Platform SE 7 ) (oracle.com)
RuntimeException (Java Platform SE 7 ) (oracle.com)
NullPointerException (Java Platform SE 7 ) (oracle.com)
ArrayIndexOutOfBoundsException (Java Platform SE 7 ) (oracle.com)
Throwable (Java Platform SE 7 ) (oracle.com)
IOException (Java Platform SE 7 ) (oracle.com)
A1~A15 5/29
'Java' 카테고리의 다른 글
Serializable (0) | 2022.05.29 |
---|---|
JVM (0) | 2022.05.28 |
JIT 컴파일러 (0) | 2022.05.27 |
어노테이션 (0) | 2022.05.27 |
ArrayList 클래스 (0) | 2022.05.24 |