-
자바 예외처리 사용 내용 및 예제 공개프로그래밍 JAVA 2020. 8. 10. 23:02
14.1 소개
예외 처리를 통해 프로그램은 예외적인 상황을 처리할 수 있으며
정상적인 집행을 계속하다
JVM이 실행 중인 작업을 감지할 경우 프로그램이 실행되는 동안 런타임 오류가 발
생함
수행이 불가능한 예를 들어, 사용할 수 없는 인덱스를 사용하여 배열에 액세스하는 경우
경계: ArrayIndexOutOfBoundsException에서 런타임 오류가 발생함 네가 만약
프로그램에서 정수를 예상할 때 두 배의 값을 입력하면
InputMismatchException
Java에서 런타임 오류는 예외로 간주된다. 예외는 나타내는 개체다.
실행이 정상적으로 진행되지 않는 오류 또는 조건 예외인 경우
처리되지 않으면 프로그램이 비정상적으로 종료될 것이다. 어떻게 예외를 처리할 수 있어?
프로그램이 계속 실행되거나 정상적으로 종료될 수 있는지 확인하십시오. 이 장은 이것을 소개한다.
제목 및 텍스트 입력 및 출력
14.2 예외 처리 개요
어떤 방법에서는 예외가 발생한다. 메소드를 호출한 사람이 잡을 수 있고 처리할 수 있음
특례
예외 객체를 만들고 던지는 방법을 포함하여 예외 처리를 시연하려면,
먼저 Listing 14.1의 예부터 시작해보자. 두 개의 정수로 읽고 그들의 정수를 표시한다.
지수의
LISTING 14.1 Incent.java
1 java.util 가져오기.스캐너;
2
3 public class Incentient {
공공 정적 보이드 메인 4개(String[] args) {
5 스캐너 입력 = 새 스캐너(System.in);
6
7 // 사용자에게 두 개의 정수를 입력하라는 메시지 표시
8 System.out.print("두 개의 정수 입력: ";;)
9 int number1 = input.nextInt();
10 int number2 = input.nextInt();
11
12 System.out.println(number1 + " / " + number2 + ")은 " +
13 ( ));
14 }
15 }
number1 / number2
예외적인
예외처리
이점
두 개의 정수를 읽다
정수분할
두 개의 정수를 입력하십시오.
5 / 2는 2
5 2
두 개의 정수를 입력하십시오.
스레드 "main" java.lang의 예외.산술 Exception: / by 0
Incent.main(Quotient.java:11)에서
3 0
두 번째 번호로 0을 입력하면 런타임 오류가 발생하는데, 그 이유는 다음과 같다.
정수를 0으로 나눈다. (0으로 나눈 부동 소수점 숫자가 증가하지 않는지 확인
예외). 이 오류를 해결하는 간단한 방법은 두 번째 숫자를 테스트하기 위해 if 문을 추가하는 것이다.
Listing 14.2와 같이.
비디오참고
14.2 예외 처리 개요 519
두 개의 정수를 읽다
2번 시험
두 개의 정수를 입력하십시오.
구분자는 0일 수 없음
5 0
예외 처리의 개념을 증명하기 위해 Listing 14.2를 다시 작성하여 a를 계산할 수 있다.
Listing 14.3에 나타낸 것과 같은 방법을 사용한 지수.
LISTING 14.3 지수Method.java 포함
1 java.util 가져오기.스캐너;
2
3공인석.{Method 포함
4
5 if (number2 == 0) {
6 System.out.println("Divisor는 0일 수 없음");
7
8 }
9
10 반송 번호 1 / 2;
11 }
12
13 public static void main (String[] args) {
14 스캐너 입력 = 새 스캐너(System.in);
15
16 // 사용자에게 두 개의 정수를 입력하라는 메시지 표시
17 System.out.print("두 개의 정수 입력: ";;)
18 int number1 = input.nextInt();
19 int number2 = input.nextInt();
20
21
22 System.out.println(number1 + " / " + number2 + ")은 "이다.
23 + 결과);
24 }
25 }
int 결과 = 지수(숫자1, number2);
System.exit(1);
public static int index(숫자 1, int number2) { index method
프로그램을 종료하다
LISTING 14.2 지수WithIf.java
1 java.util 가져오기.스캐너;
2
3공인석.WithIf {
공공 정적 보이드 메인 4개(String[] args) {
5 스캐너 입력 = 새 스캐너(System.in);
6
7 // 사용자에게 두 개의 정수를 입력하라는 메시지 표시
8 System.out.print("두 개의 정수 입력: ";;)
9 int number1 = input.nextInt();
10 int number2 = input.nextInt();
11
12 if (number2 != 0)
13 System.out.println(number1 + " / " + number2)
14 + "는 " + ( );
그 밖에 15
16 System.out.println("Divisor는 0 "이 될 수 없음;;
17 }
18 }
number1 / number2
두 개의 정수를 읽다
방법을 실행하다.
520장 14장 예외 처리 및 텍스트 I/O
두 개의 정수를 입력하십시오.
구분자는 0일 수 없음
5 0
방법 지수(라인 4~11)는 두 정수의 몫을 반환한다. 2번이 0이면 0이다.
값을 반환할 수 없으므로 프로그램은 7행에서 종료된다. 이것은 분명히 문제다. 너
방법이 프로그램을 종료하게 해서는 안 된다. 전화를 건 사람은 프로그램 종료 여부를 결정해야 한다.
메소드가 호출자에게 예외가 발생했음을 알리는 방법은? Java에서 다음 작업을 수행할 수 있
는 방법
전화를 건 사람이 잡아서 처리할 수 있는 예외를 두다 리스트 14.3은 다시 작성될 수 있고
Listing 14.4에 나타난 바와 같이.
LISTING 14.4 지수WithException.jav
1 java.util 가져오기.스캐너;
2
3공인석.Exception 포함 {
4
5 if (number2 == 0)
6
7
8 반송 번호 1 / 2;
9 }
10
11 public static void main (String[] args) {
12 스캐너 입력 = 새 스캐너(System.in);
13
14 // 사용자에게 두 개의 정수를 입력하라는 메시지 표시
15 System.out.print("두 개의 정수 입력: ";;)
16 int number1 = input.nextInt();
17 int number2 = input.nextInt();
18
19
20
21 System.out.println(number1 + " / " + number2 + ")은 "이다.
22 + 결과);
23 }
24
25 System.out.println("예외: 정수 " +)
26 "0으로 나누기";
27 }
28
29 System.out.println("실행 계속...");
30 }
31 }
캐치(산술Exception)
'프로그래밍 JAVA' 카테고리의 다른 글
자바 getStackTrace를 통한 처리내용 (0) 2020.08.11 자바 예외 선언 다이어그램 사용법 (0) 2020.08.11 자바 예외처리 기본 ( 분기문 사용법 ) (0) 2020.08.10 자바 JAVA Throw catch 사용법 (0) 2020.08.10 자바 사각형 , 정육면체 그리기 예제 (0) 2020.08.09