1. 예외처리
1)예외발생된 경우 상황? 비정상종료
2)예외처리? 비정상종료--> 정상종료.
예외의 원인인 코드수정은 불가.
3)방법?
- 예외클래스 계층구조
Object
|
Throwable
|
Exception (예외클래스 최상위 간주)
|
RuntimeExcetion IOException,SQLException
(런타임계열, 컴파일 unchecked계열) ( 비런타임계열, 컴파일 checked 계열)
| |
NullPointerException FileNotFoundException
ArithmeticException
ArrayIndexOutofBoundsException
..
=> try~cacth 또는 throws 인 ==> 무조건 try~cacth 또는 throws 해야된다.(*****)
예외처리로 문제 해결 안함. if 문으로 해결불가.
if문 해결함.
- 발생된 곳에서 처리
try{
실행문;
실행문;
}catch(예외클래스 e){
예외처리 코드
}catch(예외클래스 e){
예외처리 코드
}finally{
반드시 실행되는 코드
}
- 위임처리 (************)
메서드 호출한 곳으로 위임하는 방식으로 main메서드까지 위임하고 마지막으로 main에서 try~catch로 처리한다.
throws 예외클래스, 예외클래스{}
4) 명시적으로 예외 발생시키는 방법
if(조건식)throw new 예외클래스(메시지); // 메시지값은 e.getMessage()로 얻음.
5) 명시적으로 예외 발생시킬때 사용하는 예외클래스를 사용자가 직접 만들어야 된다. ( 사용자 정의 예외클래스)
public class MyException extends Exception{
public MyException(String mesg){
super(mesg);
}
}
2. 제네릭스(generics)
1) 표현식
<T>
<E>
<K,V>
<T,R>
2) 특징
- 관리하는 데이터의 타입을 명시적으로 지정한 타입으로 제한하는 방법
3) 장점 2가지
- 컴파일시에 잘못된 데이터가 저장된것을 확인이 가능하다.
- 형변환 불필요
4) 주요용도
- 컬렉션 API
- 함수형 인터페이스 및 stream API
'Programming > JAVA(eclipse)' 카테고리의 다른 글
java 14 일차 _ 01. 메서드참조 (0) | 2024.03.27 |
---|---|
java 13일차 _ 01. 제네릭스( generics ) / 컬렉션 API / 표준API함수형인터페이스 (0) | 2024.03.26 |
java 12일차_ 02. 제네릭스( generics ) (0) | 2024.03.25 |
java 12일차_ 01. 예외처리 (0) | 2024.03.25 |
java 11일차 _ 01. 유틸리티 클래스( Arrays ) (0) | 2024.03.22 |