package test;
public class Test3 {
public static void main(String[] args) {
System.out.println("프로그램 시작");
// 예외: 프로그램 실행동안 예기치 못한 에러
int a=10, b=0, c=0;
c = a / b; // 0으로 나눔 예외발생!
System.out.println("c -> " + c);
System.out.println("프로그램 정상종료");
} // main()의 끝
}
package test;
public class Test4 {
public static void main(String[] args) {
System.out.println("프로그램 시작");
// 예외: 프로그램 실행동안 예기치 못한 에러
int a=10, b=0, c=0;
if (b != 0) {
c = a / b;
} else { // b == 0
System.out.println("0으로 나눌수 없습니다.");
}
System.out.println("c -> " + c);
System.out.println("프로그램 정상종료");
}
}
package test;
public class Test5 {
public static void main(String[] args) {
System.out.println("프로그램 시작");
// 예외: 프로그램 실행동안 예기치 못한 에러
int a=10, b=0, c=0;
try {
c = a / b; // 0으로 나눔 예외발생!
} catch (ArithmeticException e) {
System.out.println("정수를 0으로 나눈 예외발생");
}
System.out.println("c -> " + c);
System.out.println("프로그램 정상종료");
} // main()의 끝
}
package test;
import java.util.List;
public class Test6 {
public static void main(String[] args) {
System.out.println("프로그램 시작");
// 예외: 프로그램 실행동안 예기치 못한 에러
int a=10, b=2, c=0; // b가 0이면, ArithmeticException 발생, NullPointerException 발생 케이스를 위해서 2로 초기화했음.
try {
// 예외가 발생할 것 같은 실행문
c = a / b; // 0으로 나눔 예외발생!
System.out.println("try문");
List<String> list = null;
list.add("성춘향"); // NullPointException 발생
} catch(ArithmeticException e) {
System.out.println("산술연산 관련 예외발생");
} catch(NullPointerException e) {
System.out.println("null 참조 예외 발생");
} catch(RuntimeException e) {
System.out.println("런타임 예외발생");
} catch(Exception e) {
System.out.println("예외발생");
} finally {
System.out.println("예외발생여부 상관없이 정리작업");
}
System.out.println("c -> " + c);
System.out.println("프로그램 정상종료");
} // main()의 끝
}
'IT > Java' 카테고리의 다른 글
자바 스레드 Thread (0) | 2018.08.05 |
---|---|
자바 try, catch, finally, exception (0) | 2018.08.05 |
자바 map, hashmap (0) | 2018.07.31 |
자바 list, vector, generec (0) | 2018.07.31 |
자바 arraylist, iterator, scanner를 사용한 회원 추가, 삭제, 검색, 목록, 종료 구현 (0) | 2018.07.30 |