1. 제네릭 (Generis)
2. 예외 처리 (Exception Handling)
1. 제네릭 (Generics)
[ 정의 ]
- 다양한 타입의 객체들을 다루는 메서드나 컬렉션 클래스에 컴파일 시의 타입체크(compile-time type check)를 해주는 기능
[ 장점 ]
1. 타입 안정성을 제공한다.
2. 타입체크와 형변환을 생략할 수 있으므로 코드가 간결해진다.
[ 제네릭 클래스 선언법]
class Box<T> { //지네릭 타입 T를 선언
T item;
void setItem(T item) { this.item = item; }
T getItem() { return item;}
}
// T: 타입변수 -> 데이터를 저장하는 용도가 아니라, 자료형 자체를 저장하는 용도
Box<String> b = new Box<String>(); //타입 T대신, 실제 타입지정
b.setItem("ABC"); //String타입으로 가능
b.setItem(new Object()); //Error발생, String이외의 타입은 지정불가
2. 예외처리 (Exception handling)
[ 정의와 목적 ]
- 정의 : 프로그램 실행 시 발생할 수 있는 예외에 대비한 코드를 작성하는 것
- 목적 : 프로그램의 비정상 종료를 막고, 정상적인 실행상태를 유지하는 것
[ 예외 처리 try - catch문 ]
try {
//예외가 발생할 가능성이 있는 코드(문장)
} catch (Exception1 e1) {
// Exception1이 발생했을 경우, 이를 처리하기 위한 코드(문장)
} catch (Exception2 e2) {
// Exception2이 발생했을 경우, 이를 처리하기 위한 코드(문장)
} catch (Exception3 e3) {
// Exception3이 발생했을 경우, 이를 처리하기 위한 코드(문장)
1. 1개의 try 블럭 다음에는 여러 종류의 예외를 처리할 수 있도록 1개 이상의 catch 블럭이 온다.
2. 발생한 예외의 종류와 일치하는 단 한개의 catch 블럭만 수행하게 된다. (그 이후는 실행 안하고 건너뜀)
3. 발생한 예외의 종류와 일치하는 catch 블럭이 없으면 예외는 처리되지 않는다.
4. try 블럭에서 실행 중 예외가 발생하면 그 이후 try 코드(문장)은 건너뛰며 예외 종류와 일치하는 catch 블럭 수행된다.
[ 예외 발생시키기 ]
//1. 먼저, 연산자 new를 이용해서 발생시키려는 예외 클래스의 객체를 만든 다음
Exception e = new Exception("고의 발생");
//2. 키워드 throw를 이용해서 예외를 발생시킨다.
throw e;
MEMO>
# 이번주는 코드를 따라서 작성하는 것보다, 문법과 정의같은 것을 이해하면서 코드를 파악하는것이 중요하다!
'인천일보아카데미 > - 학습일지' 카테고리의 다른 글
[학습일지]JAVA교육일지 32일차 (0) | 2022.06.10 |
---|---|
[학습일지]JAVA교육일지 31일차 (0) | 2022.06.10 |
[학습일지]JAVA교육일지 29일차 (0) | 2022.06.09 |
[학습일지]JAVA교육일지 28일차 (0) | 2022.06.08 |
[학습일지]JAVA교육일지 27일차 (0) | 2022.06.08 |