
Object
-Object는 자바의 모든 클래스의 최상위 클래스입니다.
-모든 클래스는 Object 클래스를 암묵적으로 상속받습니다.
-Object 클래스는 모든 객체에 대한 기본적인 메서드를 정의하고 있으며, 모든 자바 객체는 Object 클래스의 메서드를 사용할 수 있습니다. 예를 들어, equals(), hashCode(), toString() 등의 메서드가 있습니다.
Throwable
-Throwable은 자바에서 예외 처리를 위한 클래스의 최상위 클래스입니다.
-Throwable 클래스는 예외(Exception)과 오류(Error)를 처리하기 위한 기본적인 메커니즘을 제공합니다.
-Throwable 클래스는 두 가지 주요 하위 클래스를 가지고 있습니다: Exception과 Error.
Error
-Error는 심각한 문제를 나타내는 예외의 하위 클래스입니다.
-Error는 프로그램에서 복구할 수 없는 상황을 나타내며, 주로 시스템 수준의 문제나 리소스 부족과 같은 상황에서 발생합니다.
-개발자가 직접적으로 Error를 처리할 필요는 없고, 일반적으로 시스템이 이러한 예외를 처리하거나 프로그램 실행을 중단시킵니다. 대표적인 예로는 OutOfMemoryError, StackOverflowError 등이 있습니다.
Exception
-Exception은 일반적인 예외 상황을 나타내는 Throwable의 하위 클래스입니다.
-Exception은 프로그램의 실행 도중에 예외적인 상황이 발생했을 때 사용됩니다.
-Exception은 두 가지 주요 유형으로 나뉩니다: 검사된 예외(Checked Exception)와 검사되지 않은 예외(Unchecked Exception).
Checked Exception
-Checked Exception은 Exception의 하위 클래스로, 컴파일러에 의해 확인되고 처리되어야 하는 예외입니다.
-RuntimeException 클래스를 상속받지 않은 예외들이 여기에 속합니다.
-Checked Exception을 발생시키는 메서드는 예외 처리를 강제합니다. 따라서 throws 문을 사용하여 예외를 선언하거나, try-catch 블록 내에서 예외를 처리해야 합니다.
-주로 외부 리소스와의 상호 작용이나 입출력(IO) 작업에서 발생할 수 있는 예외들이 여기에 속합니다.
-대표적으로 IOException, FileNotFoundException, SQLException 등이 있습니다.
Unchecked Exception
-Unchecked Exception은 RuntimeException 클래스와 RuntimeException의 하위 클래스로, 컴파일러에 의해 확인되지 않고 처리되지 않아도 되는 예외입니다.
-Unchecked Exception을 발생시키는 메서드는 예외를 선언하지 않아도 되며, 개발자는 명시적인 예외 처리를 수행하지 않아도 됩니다.
-주로 프로그래머의 실수에 의한 예외이거나, 실행 시 발생하는 예외로 예측하기 어려운 상황에서 발생합니다. NullPointerException, ArrayIndexOutOfBoundsException, ArithmeticException 등이 여기에 속합니다.
'java(자바)' 카테고리의 다른 글
[java(자바)] Java와 C/C++의 차이점 _디버깅의 눈물 (0) | 2023.04.03 |
---|---|
[java(자바)] 자바8의 특징-람다식, 스트림, 새로운 날짜&시간 API _디버깅의 눈물 (0) | 2023.04.02 |
[java(자바)] 리플렉션(Reflection)이란? _디버깅의 눈물 (0) | 2023.04.01 |
[java(자바)] Generic이란? _디버깅의 눈물 (0) | 2023.03.31 |
[java(자바)] 직렬화(Serialization)와 역직렬화(Deserialization) _디버깅의 눈물 (0) | 2023.03.30 |