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 | 29 | 30 |
31 |
Tags
- css position
- 기술 면접
- 자바의 장점
- 기술면접
- 스프링 부트
- tcp와 udp의 차이점
- Create
- 리캡차
- Java
- 80 to 443
- 신입개발자
- 구글 리캡차
- Oracle
- CSS display 속성
- multiarray
- cs질문
- Rename to
- 스프링부트
- 바닐라js
- css
- position속성
- html
- 네트워크
- 자바
- 시맨틱 태그
- Failed to read the 'responseText' property from 'XMLHttpRequest'
- database
- html요소
- 속성
- 예외처리
Archives
- Today
- Total
Building value
Java[예외처리(try-catch-finally)] 본문
반응형
자바에서 예외(Exception)란 프로그램 실행 도중 발생하는 예기치 못한 문제를 뜻합니다.
이러한 예외는 다양한 상황에서 발생할 수 있으며,
이러한 상황에서 프로그램의 비정상적인 종료를 방지하기 위해 예외처리를 사용합니다.
자바에서는 예외를 두 종류로 나눌 수 있습니다.
-Checked Exception : 컴파일러가 체크하며, 예외 처리를 반드시 해주어야 하는 예외입니다.
-Unchecked Exception : 예외 처리를 하지 않아도 되는 예외입니다.
자바에서 예외 처리는 try-catch-finally 구문을 사용합니다.
try 블록 안에서 예외가 발생할 경우, 해당 예외를 처리할 catch 블록을 실행하고,
finally 블록은 예외 발생 여부에 상관 없이 항상 실행됩니다.
public class Example {
public static void main(String[] args) {
try {
// 예외가 발생할 가능성이 있는 코드
int[] array = {1, 2, 3};
System.out.println(array[3]);
} catch (ArrayIndexOutOfBoundsException e) {
// 예외 처리 코드
System.out.println("배열 인덱스가 잘못되었습니다.");
} finally {
// 항상 실행되는 코드
System.out.println("프로그램이 종료되었습니다.");
}
}
}
// 출력 결과:
배열 인덱스가 잘못되었습니다.
프로그램이 종료되었습니다.
위의 코드에서 try 블록 안에서 배열의 인덱스를 벗어나는 값을 출력하려고 하므로,
ArrayIndexOutOfBoundsException 예외가 발생할 가능성이 있습니다.
따라서 catch 블록에서 해당 예외를 처리해주어야 합니다.
아래는 다양한 종류의 예외 예시 코드입니다.
// ArithmeticException : 산술 연산에서 예외 발생할 때 발생하는 예외입니다.
public class Example {
public static void main(String[] args) {
try {
// 예외가 발생할 가능성이 있는 코드
int result = 10 / 0;
} catch (ArithmeticException e) {
// 예외 처리 코드
System.out.println("0으로 나눌 수 없습니다.");
} finally {
// 항상 실행되는 코드
System.out.println("프로그램이 종료되었습니다.");
}
}
}
===========================================================================
// NullPointerException : null 값을 참조할 때 발생하는 예외입니다.
public class Example {
public static void main(String[] args) {
try {
// 예외가 발생할 가능성이 있는 코드
String str = null;
System.out.println(str.length());
} catch (NullPointerException e) {
// 예외 처리 코드
System.out.println("null 값을 참조할 수 없습니다.");
} finally {
// 항상 실행되는 코드
System.out.println("프로그램이 종료되었습니다.");
}
}
}
===========================================================================
// FileNotFoundException : 파일을 찾을 수 없을 때 발생하는 예외입니다.
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class Example {
public static void main(String[] args) {
try {
// 예외가 발생할 가능성이 있는 코드
File file = new File("example.txt");
Scanner sc = new Scanner(file);
} catch (FileNotFoundException e) {
// 예외 처리 코드
System.out.println("파일을 찾을 수 없습니다.");
} finally {
// 항상 실행되는 코드
System.out.println("프로그램이 종료되었습니다.");
}
}
}
위와 같이 try-catch-finally 구문을 사용하여 다양한 예외를 처리할 수 있습니다.
반응형
'Java' 카테고리의 다른 글
Java[제네릭스(Generic)] (0) | 2023.03.25 |
---|---|
Java[예외처리(throw와 throws)] (0) | 2023.03.24 |
Java[접근제어자] (0) | 2023.03.23 |
Java[인터페이스(Interface)] (0) | 2023.03.23 |
Java[추상화(Abstraction)] (0) | 2023.03.23 |