예외 : 예외적인 상황
예외가 발생하면 그 즉시 프로그램이 종료됨
오류 발생시 아래에서 어디서 오류났는지 알려준다.
예외를 처리하는 순서
1. 예외를 발생시켜야함
2. 예외 메세지를 분석
-> 예외가 발생한 클래스 이름 (소스 파일 이름)
-> 예외가 발생한 라인 번호
-> 예외 이름
-> 예외 사유
3. 예외 처리
위에 내용을 순차적으로 보고 예외 처리하기
예외발생 이유 >> 나눗셈을 할때
예로 0으로 나누려고 한다.
예외 발생한걸 보고 if문으로 조건식을 줘서 예외를 처리했었음
예외 발생
예외 발생 인덱스 0,1,2, 까지 있는데
3이상을 입력하면 데이터가 없으므로 예외가 발생됨
예외처리 함
3이상이 나오면 오류가 발생했다고 말하도록
정상적으로 나왔을 경우
예외경우 (2)
ArithmeticException 기타등등 예외 이름
try {
예외가 발생할 가능성이 있는 코드들
} catch (처리할 예외명 ) {
예외를 처리할 코드들
}
예외가 나오면 위에 코드 식으로 예외처리를 함
예외이름명 적을때
Array 누르고 ctrl + space 누르면 자동입력이 됨
try에 넣는다.
try 여러개 사용가능함
오류가 발생했는데 val 밖에서 다시 선언해보기
이렇게 복잡해지면 안됨
먼저 선언을 위로 올리고
정리해서 한눈에 잘 보이도록 정리하기`~~
예외 메세지가 출력됐다는건 예외처리를 하지 않았다.
분모가 0 인경우 첫번째 catch로 받아주고
정수가 아닌 실수로 나오면 두번째 catch로 받아준다.
또다른 예외가 생기면 catch를 계속 달면 됨
random
int index = random.nextInt(4); 4개중에서 랜덤박스
두가지 catch를 같이 묶을수 있다.
| (or)로 묶는다.
예외처리 (4)
예외 이름 마지막에 Excetion 이 붙는다~
마지막에 e 가 왜 붙게요 ?
e 객체가 예외 정보를 가지고 있다.
가끔 예외 메세지 정보를 출력하는 경우에는 이렇게 하면됨
크게 쓸일은 없음
예외의 부모인 RuntimeException 넣어서 예외처리가 가능하다
더 부모 Exception 으로 적어서 모든 것을 예외처리하도록 가능함
throw를 사용해서 예외 발생
다른 class를 만들어서 나의 예외를 만듬 상속처리함
(5) 메서드에서 발생하는 예외
마지막에 정리한다고 정신이 없어서
메서드 예외처리 잘 못함
추가로 공부하기를
나의 6개월 열심히 하기
'코딩 > java (백엔드공부)' 카테고리의 다른 글
java chater16 제네릭스(Generics) = 지네릭스 (0) | 2022.04.18 |
---|---|
java chaper16 레퍼클래스(wapper class), 오토박싱, 언박싱 (0) | 2022.04.18 |
java chapter13 인터페이스 , 추상클래스 (0) | 2022.04.14 |
java 다형성 기초 & 심화 (0) | 2022.04.13 |
java 클래스, 생성자 추가 공부 (0) | 2022.04.13 |