겉바속촉
[자바] throw, throws 연습하기 본문
728x90
반응형
이번에는 throw와 throws를 연습해볼게요:)
throws-호출한 영역으로 예외처리 던져버리겠어!!
throw-강제로 예외 발생시키겠어!!!
요정도로 생각해주시면 되겠습니다:)
우선 다음과 같이 코드를 작성해주세요!!
package day0603;
import java.util.Scanner;
public class ExceptionThrows_09 {
public static void main(String[] args) {
//사용자정의 예외처리
//예외가 발생할 경우가 아님에도 불구하고 조건에 해당하면 강제로 예외처리
//throws-호출한 영역으로 예외처리를 던짐
//throw-강제로 예외를 발생시킬때
scoreInput();
}
public static void scoreInput() throws Exception
{
//점수가 0~100점 아니라면 강제로 익셉션 발생하게
Scanner sc = new Scanner(System.in);
int score=0;
System.out.println("점수를 입력하세요");
score = sc.nextInt();
if(score<0 || score>100)
{
throw new Exception("점수가 잘못입력되었습니다");
}else
{
System.out.println("나의 점수는"+score +"입니다");
}
}
}
그러면 main 부분에서 작성하신 scoreInput(); 부분에 빨간줄이 보이실거에요
그 빨간 줄에 마우스를 올려보시면
두가지가 뜹니다
그 중에서 Surround with try/catch 클릭!!
try/catch해주시면 그 줄부터
다음과 같은 코드가 생성이 됩니다
거기에 추가로 더 적어주실게요:)
try {
scoreInput();
} catch (Exception e) {
// TODO Auto-generated catch block
System.out.println("오류메세지: "+ e.getMessage());
}
System.out.println("정상종료");
}
지난번에 했던 try-catch의 위치와 현재 try-catch의 위치가 다른 것을 확인하실 수 있죠!!
throws!! 말 그대로 던져버린다고 생각하시면 됩니다
해당 메서드가 실행되는 곳에서 오류를 잡아내는 겁니다.
에러가 일어날 법한 곳에서 잡아내는 것이 아니라!!!!!!!!!!!!!
메인메서드에서 scoreInput()을 부르고 있기 때문에
그 자리에서 try catch가 일어나고 있는 것이쥬!^^!
전체 코드
package day0603;
import java.util.Scanner;
public class ExceptionThrows_09 {
public static void main(String[] args) {
//사용자정의 예외처리
//예외가 발생할 경우가 아님에도 불구하고 조건에 해당하면 강제로 예외처리
//throws-호출한 영역으로 예외처리를 던짐
//throw-강제로 예외를 발생시킬때
try {
scoreInput();
} catch (Exception e) {
// TODO Auto-generated catch block
System.out.println("오류메세지: "+ e.getMessage());
}
System.out.println("정상종료");
}
public static void scoreInput() throws Exception
{
//점수가 0~100점 아니라면 강제로 익셉션 발생하게
Scanner sc = new Scanner(System.in);
int score=0;
System.out.println("점수를 입력하세요");
score = sc.nextInt();
if(score<0 || score>100)
{
throw new Exception("점수가 잘못입력되었습니다");
}else
{
System.out.println("나의 점수는"+score +"입니다");
}
}
}
728x90
반응형
'IT일기(하반기) > 블록체인' 카테고리의 다른 글
Oracle 다운로드 (0) | 2020.06.04 |
---|---|
String 여러가지 예제 (0) | 2020.06.03 |
[자바] 예외(Exception) (0) | 2020.06.03 |
[자바] 배열을 활용한 호출 (0) | 2020.06.02 |
[자바] 생성자 연습하기 (0) | 2020.06.01 |