๐ ๋ณธ๋ฌธ
Java๋ฅผ ์ฒ์ ๋ฐฐ์ฐ๋ค ๋ณด๋ฉด ์์ฃผ ๋ง์ฃผ์น๋ ํค์๋๊ฐ ์์ฃ .
๋ฐ๋ก try, catch, finally์
๋๋ค.
์ด ๊ตฌ์กฐ๋ ์์ธ(Exception)๊ฐ ๋ฐ์ํ์ ๋ ํ๋ก๊ทธ๋จ์ด ๋น์ ์ ์ข
๋ฃ๋์ง ์๋๋ก ์ฒ๋ฆฌํด์ฃผ๋ ํต์ฌ ๋ฌธ๋ฒ์
๋๋ค.
์ค๋์ Java์ ์์ธ ์ฒ๋ฆฌ ๊ธฐ์ด๋ฅผ ํ๋์ ์ ๋ฆฌํด๋๋ฆด๊ฒ์.
1. โ ๏ธ ์์ธ(Exception)๋?
ํ๋ก๊ทธ๋จ ์คํ ์ค์ ๋ฐ์ํ๋ ์ค๋ฅ ์ํฉ์
๋๋ค.
์: 0์ผ๋ก ๋๋๊ธฐ, ๋ฐฐ์ด ๋ฒ์ ์ด๊ณผ ์ ๊ทผ, ํ์ผ์ด ์กด์ฌํ์ง ์์ ๋ ๋ฑ
โ ์์ธ๊ฐ ์ฒ๋ฆฌ๋์ง ์์ผ๋ฉด ํ๋ก๊ทธ๋จ์ ์ฆ์ ์ข ๋ฃ๋ฉ๋๋ค.
2. ๐งฑ ๊ธฐ๋ณธ ๊ตฌ์กฐ – try / catch / finally
try {
// ์์ธ๊ฐ ๋ฐ์ํ ๊ฐ๋ฅ์ฑ์ด ์๋ ์ฝ๋
} catch (Exception e) {
// ์์ธ ๋ฐ์ ์ ์ฒ๋ฆฌํ ์ฝ๋
} finally {
// ์์ธ์ ์๊ด์์ด ํญ์ ์คํ๋๋ ์ฝ๋
}
3. ๐ ๊ฐ ๋ธ๋ก ์ค๋ช
- try: ์์ธ๊ฐ ๋ฐ์ํ ์ ์๋ ์ํํ ์ฝ๋๋ฅผ ์์ฑ
- catch: ์์ธ๊ฐ ๋ฐ์ํ์ ๋ ์์ธ ๊ฐ์ฒด๋ฅผ ๋ฐ์ ์ฒ๋ฆฌ
- finally: ์์ธ ๋ฐ์ ์ฌ๋ถ์ ์๊ด์์ด ๋ฌด์กฐ๊ฑด ์คํ
์์: ํ์ผ ์ด๊ณ → ์์ → ๋ซ๊ธฐ
→ ํ์ผ ๋ซ๋ ๋ถ๋ถ์ finally์ ๋ฃ๋ ๊ฒ ์ผ๋ฐ์
4. ๐ก ์์ ์ฝ๋
public class ExceptionExample {
public static void main(String[] args) {
try {
int result = 10 / 0; // ์์ธ ๋ฐ์
System.out.println("๊ฒฐ๊ณผ: " + result);
} catch (ArithmeticException e) {
System.out.println("์์ธ ๋ฐ์: " + e.getMessage());
} finally {
System.out.println("ํ๋ก๊ทธ๋จ ์ข
๋ฃ ์ฒ๋ฆฌ");
}
}
}
์ถ๋ ฅ ๊ฒฐ๊ณผ:
์์ธ ๋ฐ์: / by zero ํ๋ก๊ทธ๋จ ์ข ๋ฃ ์ฒ๋ฆฌ
5. ๐ฏ ์ ์์ธ ์ฒ๋ฆฌ๊ฐ ์ค์ํ๊ฐ?
- ํ๋ก๊ทธ๋จ์ ๋น์ ์ ์ข ๋ฃ ๋ฐฉ์ง
- ์ฌ์ฉ์์๊ฒ ์๋ฌ ๋ฉ์์ง๋ฅผ ๋ช ํํ ์๋ด
- ์์ธ ๋ฐ์ ํ์๋ ์์ ์ ์ธ ํ๋ฆ ์ ์ง ๊ฐ๋ฅ
- ์ ์ง๋ณด์ ๋ฐ ๋๋ฒ๊น ์๋ ์ค์
โ ๋ง๋ฌด๋ฆฌ
Java์ ์์ธ ์ฒ๋ฆฌ ๊ตฌ์กฐ๋ ์ฒ์์ ๋ฏ์ค์ง๋ง,
์ค์ ๊ฐ๋ฐ์์๋ ๊ฑฐ์ ๋ชจ๋ ๊ณณ์ ํ์๋ก ์ฌ์ฉ๋ฉ๋๋ค.
try, catch, finally์ ํ๋ฆ์ ์ดํดํ๊ณ
์์ ์์ ๋ถํฐ ์ง์ ์ค์ตํด๋ณด๋ฉด ์ฝ๊ฒ ์ต์ํด์ง ์ ์์ต๋๋ค.
'Programing > JAVA' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Java Stream API ๊ธฐ์ด โ ์ปฌ๋ ์ ์ฒ๋ฆฌ์ ํ์ ์ ๋ฐฉ๋ฒ (0) | 2025.07.08 |
---|---|
์ ์ถ๋ ฅ INPUT / OUTPUT (0) | 2022.03.08 |
๋๋ค LAMBDA (1) | 2022.03.08 |
์ ๋ค๋ฆญ GENERIC (0) | 2022.03.08 |
์ปฌ๋ ์ F/W COLLECTION (2) | 2022.03.07 |