반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- pycharm
- C언어
- vscode
- 데이터전문기관
- CES 2O21 참여
- 대이터
- bccard
- 결합전문기관
- KNeighborsClassifier
- CES 2O21 참가
- classification
- inorder
- 웹 용어
- Keras
- broscoding
- mglearn
- discrete_scatter
- tensorflow
- html
- postorder
- 재귀함수
- web 사진
- 자료구조
- 머신러닝
- web
- java역사
- cudnn
- paragraph
- web 용어
- web 개발
Archives
- Today
- Total
bro's coding
java.Exception Handling(예외 처리).finally 본문
반응형
finally
예외 발생 여부와 관계없이 항상 실행
비정상 종료시에도 finally는 실행 됨
ex)입출금기에서 에러 혹은 예외가 발생해도 카드를 반환해줘야 할 때 사용
package step3;
public class TestException5 {
public static void main(String[] args) {
// 코드 실행 결과 예상
String age = "21";
// age = "스물한살";
try {
int intAge = Integer.parseInt(age);// 문자열을 정수로 변환
System.out.println(intAge + 1);// 22
} catch (NullPointerException ne) {
System.out.println("b");// 실행 안 됨
} catch (NumberFormatException nf) {
System.out.println("a");
} finally {// 항상 실행
System.out.println("f");
}
System.out.println("c");
}
}
/*
22
f
c
*/
package step3;
public class TestException5 {
public static void main(String[] args) {
// 코드 실행 결과 예상
String age = "21";
age = "스물한살";
try {
int intAge = Integer.parseInt(age);// 문자열을 정수로 변환
System.out.println(intAge + 1);// 22
} catch (NullPointerException ne) {
System.out.println("b");// 실행 안 됨
} catch (NumberFormatException nf) {
System.out.println("a");
} finally {// 항상 실행
System.out.println("f");
}
System.out.println("c");
}
}
/*
a
f
c
*/
예외 처리하지 않아도 실행
package step3;
public class TestException5 {
public static void main(String[] args) {
// 코드 실행 결과 예상
String age = "21";
age = "스물한살";
try {
System.out.println(3/0);
int intAge = Integer.parseInt(age);// 문자열을 정수로 변환
System.out.println(intAge + 1);// 22
} catch (NullPointerException ne) {
System.out.println("b");// 실행 안 됨
} catch (NumberFormatException nf) {
System.out.println("a");
} finally {// 항상 실행
System.out.println("f");
}
System.out.println("c");
}
}
/*
f
Exception in thread "main" java.lang.ArithmeticException: / by zero
at step3.TestException5.main(TestException5.java:10)
*/
package step2;
import java.io.FileNotFoundException;
import java.io.FileReader;
class MemoService {
// throws : 호출한 측으로 예외 발생시 해당 Exception 객체를 전달하겠다는 의미
public void readMemo(String filePath) throws FileNotFoundException {// throws Exception : Exception전체를 넘김/여러개의
// Exception 넘길 수 있음
try {
FileReader fr = new FileReader(filePath);
System.out.println(filePath + "의 파일 정보를 읽는 작업을 수행");
} finally {
System.out.println("항상 실행해야 하는 부분은 finally로 처리");
}
}
}
public class TestThrows1 {
public static void main(String[] args) throws FileNotFoundException {
MemoService service = new MemoService();
try {
service.readMemo("C: kosta215\\a.txt");
} catch (FileNotFoundException e) {
System.out.println("file이 없어서 읽을 수가 없도다. 파일명을 다시 확인해달라.");
// e.printStackTrace();
}
System.out.println("프로그램 정상 수행");
}
}
/*
항상 실행해야 하는 부분은 finally로 처리
file이 없어서 읽을 수가 없도다. 파일명을 다시 확인해달라.
프로그램 정상 수행
*/
java.Exception Handling(예외 처리)
Excetion Handling(예외 처리) Exception : 예외 / Error : 에러 Exception Handling(예외처리) : 프로그램 실행시 예외적 상황 발생에 대한 대안흐름(대처방안)을 실행하고 프로그램을 정상 수행하는데 있음 > E..
broscoding.tistory.com
반응형
'[IT] > java' 카테고리의 다른 글
java.Exception Handling(예외 처리).throw.UserDefineException(사용자 정의 예외) (0) | 2021.03.10 |
---|---|
java.Exception Handling(예외 처리).throw (0) | 2021.03.10 |
java.Exception Handling(예외 처리).throws (0) | 2021.03.10 |
java.Exception Handling(예외 처리).try/catch (0) | 2021.03.09 |
java.Exception Handling(예외 처리) (0) | 2021.03.09 |
java.map (0) | 2021.03.09 |
java.stack/queue (0) | 2021.03.09 |
java.ArrayList/LinkedList (0) | 2021.03.09 |
Comments