βΆ μμΈ ν΄λμ€
β
*μ€λ₯λ?
νλ‘κ·Έλ¨μμ μ€λ₯κ° λ°μνλ μν©μ λ κ°μ§μ΄λ€.
1. νλ‘κ·Έλ¨ μ½λ μμ± μ€ μ€μλ‘ λ°μνλ μ»΄νμΌ μ€λ₯
μ»΄νμΌ μ€λ₯λ κ°λ° νκ²½μμ λλΆλΆ μμΈμ μ μ μλ€.
2. μ€ν μ€μΈ νλ‘κ·Έλ¨μ΄ μλνμ§ μμ λμμ νκ±°λ νλ‘κ·Έλ¨μ΄ μ€μ§λλ μ€ν μ€λ₯
μ€ν μ€λ₯ μ€ νλ‘κ·Έλ¨μ μλͺ» ꡬννμ¬ μλν λ°μ λ€λ₯΄κ² μ€νλμ΄ μκΈ°λ μ€λ₯λ₯Ό 'λ²κ·Έβ'λΌκ³ νλ€.
β
β
β
*μ€λ₯μ μμΈ
μ€ν μ€λ₯λ ν¬κ² λ κ°μ§κ° μλλ°, νλλ μλ° κ°μ λ¨Έμ μμ λ°μνλ μμ€ν μ€λ₯(error)μ΄κ³ λ€λ₯Έ νλλ μμΈ(exception)μ΄λ€. μμ€ν μ€λ₯μ μλ‘λ μ¬μ© κ°λ₯ν λμ λ©λͺ¨λ¦¬κ° μλ κ²½μ°λ μ€ν λ©λͺ¨λ¦¬μ μ€λ²νλ‘κ° λ°μν κ²½μ° λ±μ λ€ μ μλ€. → μ΄λ° μμ€ν μ€λ₯λ νλ‘κ·Έλ¨μμ μ μ΄ν μ μμ.
λ°λ©΄ μμΈλ νλ‘κ·Έλ¨μμ μ μ΄ν μ μλ€. μλ₯Ό λ€μ΄ νλ‘κ·Έλ¨μμ νμΌμ μ½μ΄ μ¬μ©νλ €λλ° νμΌμ΄ μλ κ²½μ°, λ€νΈμν¬λ‘ λ°μ΄ν°λ₯Ό μ μ‘νλ €λλ° μ°κ²°μ΄ μ λ κ²½μ°, λ°°μ΄ κ°μ μΆλ ₯νλ €λλ° λ°°μ΄ μμκ° μλ κ²½μ° λ±μ΄λ€.
β
β
β
*μμΈ ν΄λμ€μ μ’ λ₯
νλ‘κ·Έλ¨μμ μ²λ¦¬νλ μμΈ ν΄λμ€μ μ΅μμ ν΄λμ€λ Exception ν΄λμ€μ΄λ€.
Exception νμ ν΄λμ€ μ€ IOException ν΄λμ€λ μ μΆλ ₯μ λν μμΈλ₯Ό μ²λ¦¬νκ³ , RuntimeExceptionλ νλ‘κ·Έλ¨ μ€ν μ€ λ°μν μ μλ μ€λ₯μ λν μμΈλ₯Ό μ²λ¦¬νλ€.
β»Exception νμ ν΄λμ€ μ€ RuntimeExceptionμ try-catchλ¬Έμ μ¬μ©νμ¬ μμΈ μ²λ¦¬λ₯Ό νμ§ μμλ μ»΄νμΌ μ€λ₯κ° λμ§ μλλ€. μλ₯Ό λ€μ΄ RuntimeException νμ ν΄λμ€ μ€ ArithmeticExceptionμ μ°μ μ°μ° μ€ λ°μν μ μλ μμΈ, μ¦ '0μΌλ‘ μ«μ λλκΈ°'μ κ°μ κ²½μ°μ λ°μνλ μμΈμ΄λ€. μ΄λ¬ν μ»΄νμΌλ¬μ μν΄ μ²΄ν¬λμ§ μλ μμΈλ νλ‘κ·Έλλ¨Έκ° μμμ μ²λ¦¬ν΄μΌ νλ―λ‘ μ£Όμν΄μΌ νλ€.
β
β
β
*μμΈ μ²λ¦¬νκΈ°
β
-try-catch문
μμΈλ₯Ό μ²λ¦¬νλ κ°μ₯ κΈ°λ³Έ λ¬Έλ².
try λΈλ‘μλ μμΈκ° λ°μν κ°λ₯μ±μ΄ μλ μ½λλ₯Ό μμ±νλ€. λ§μ½ try λΈλ‘ μμμ μμΈκ° λ°μνλ©΄ λ°λ‘ catch λΈλ‘μ΄ μνλλ€.
<κ·Έλ₯ μ μμλ>
package exception;
public class ArrayExceptionHandling {
public static void main(String[] args) {
int[] arr = new int[5];
for (int i = 0; i <= 5; i++) {
arr[i] = i;
System.out.println(arr[i]);
}
}
System.out.println("νλ‘κ·Έλ¨ μ’
λ£");
}
}
β<μ€ν κ²°κ³Ό>
β
<try-catchλ¬Έ μ¬μ©>
package exception;
public class ArrayExceptionHandling {
public static void main(String[] args) {
int[] arr = new int[5];
try { // μμΈκ° λ°μν μ μμΌλ―λ‘ try λΈλ‘μ μμ±
for (int i = 0; i <= 5; i++) {
arr[i] = i;
System.out.println(arr[i]);
}
} catch (ArrayIndexOutOfBoundsException e) { // μμΈκ° λ°μνλ©΄ catch λΈλ‘ μν
System.out.println(e);
System.out.println("μμΈ μ²λ¦¬ λΆλΆ");
}
System.out.println("νλ‘κ·Έλ¨ μ’
λ£");
}
}
β<μ€ν κ²°κ³Ό>
-μμΈ μ²λ¦¬λ νλ‘κ·Έλ¨μ΄ λΉμ μ μ’ λ₯λλ κ²μ λ°©μ§ν μ μμΌλ―λ‘ λ§€μ° μ€μνλ€.
'Java' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Java-κΈ°μ΄] try-with-resourcesλ¬Έ (0) | 2021.02.22 |
---|---|
[Java-κΈ°μ΄] μ»΄νμΌλ¬μ μν΄ μμΈκ° 체ν¬λλ κ²½μ° (0) | 2021.02.22 |
[Java-κΈ°μ΄] μ€νΈλ¦Ό (0) | 2021.02.22 |
[Java-κΈ°μ΄] λλ€μ (0) | 2021.02.22 |
[Java-κΈ°μ΄] λ΄λΆ ν΄λμ€ (0) | 2021.02.22 |
λκΈ