자바 예외처리 throws

자바 예외처리 throws

작성일 2024.01.03댓글 2건
    게시물 수정 , 삭제는 로그인 필요

try catch문은 이해가 되는데 22번째 줄 public static int numberInput() throws InputMismatchException 메서가 이해가 안돼요 ㅠㅠ 왜 작성하는 건가요?? 앞에 try catch문으로 되지 않나요?

package Day15;


import java.util.InputMismatchException;

import java.util.Scanner;


public class EX12 {


public static void main(String[] args) {

// 사용자로부터 정수를 입력 받아 반환해준다 = numberInput()

System.out.print("정수를 입력하세요 : ");

try {

int number = numberInput();

System.out.println("입력값 : \"" + number + "\" ");

} catch (InputMismatchException e) {

System.err.println(e);

}

}

// 정적 메서드

// 예외를 전가시키는 것 = throws

public static int numberInput() throws InputMismatchException {

Scanner scanner = new Scanner(System.in);

int number = scanner.nextInt();

scanner.close();

return number;

}


}


#자바 예외처리 #자바 예외처리 종류 #자바 예외처리 예제 #자바 예외처리 throw #자바 예외처리 방법 #자바 예외처리 만들기 #자바 예외처리 try catch #자바 예외처리 코드 #자바 예외처리 클래스 #자바 예외처리 여러개

profile_image 익명 작성일 -

음...

쉽게얘기하면 예외 떠넘기기 하는게 맞구요

int number = numberInput(); 이부분에 try문을 썻기때문에

numberInput 메서드에서 발생하는 오류를 int number = numberInput(); 이부분으로 넘겨서

catch (InputMismatchException e) 문에서 오류를 확인 가능합니다.

numberInput 메서드에 try를 쓰느냐 떠넘겨서 int number = numberInput() 이부분의 try를 타게하느냐 그정도 차이입니다.

예외가 발생할 수 있는 코드가 있다는 것을 인지시키고 예외처리를 강요하며, 여러 가지 발생 가능한 예외들을 호출한 메서드에서 한 번에 처리할 수 있게 하여 관리를 용이하게 해 줄 수 있습니다.

라고하네요.

profile_image 익명 작성일 -

numberInput() 메서드가 throws InputMismatchException을 선언하는 이유는 해당 메서드에서 발생할 수 있는 예외를 호출한 곳으로 전파하기 위함입니다.

Scanner 클래스의 nextInt() 메서드는 사용자로부터 정수를 입력받는데, 만약 사용자가 정수 대신 다른 형식의 입력을 하면 InputMismatchException이 발생합니다. 이 예외는 프로그램에서 처리되어야 합니다.

따라서 numberInput() 메서드에서 이 예외를 직접 처리하지 않고(try-catch 블록을 사용하지 않고), 대신에 메서드 선언부에 throws InputMismatchException을 추가하여, 해당 예외가 발생할 경우 이 메서드를 호출한 곳에서 처리하도록 하는 것입니다.

numberInput() 메서드를 호출하는 곳에서는 try-catch 블록을 사용하여 이 메서드에서 발생하는 InputMismatchException을 처리하고 있습니다. 이렇게 함으로써 예외를 적절히 처리하면서 프로그램이 비정상적으로 종료되지 않도록 할 수 있습니다.

자바 예외 처리 개념

... throw문과 throws문을 이용하면 예외처리할 수 있게 할 수 있으며, 이를 이용해 프로그램을 정상적으로 실행할 수 있게 할 수 있습니다.

자바 코테 시 throws 키워드를...

지난 학기 자바 과목을 수강하고 이번에 간단히 백준을 풀어봤는데 다른 분들... 예외처리에 관해서 try-catch-finally와 throws Exception과 예외를 만들어서 던지는...

자바 예외 처리 질문인데요

여기에서요 정확히 throws의 역할이 뭐죠? 일단 논리적으로는 setPassword... { // 이 곳에서 비밀번호 형식이 틀렸을 경우 예외처리 System.err.println(e.getMessage()); }

자바 예외처리

... System.out.println(aver); } } 이렇게 처리 해야 하고요, throws문은 해당 메소드에서 예외가 발생하면 그 메소드에서 처리하는것이...