Java 에서는 두 가지 유형의 예외가 있습니다.
1)Checked:컴파일 타임에 검사되는 예외입니다. 는 경우에는 코드에서는 방법을 발생 확인된 예외 다음 방법 중 하나 처리하는 예외 또는 지정해야 합니다 예외를 사용하여 발생 키워드를 사용합니다.
예를 들어,다음을 고려는 Java 프로그램을 열고 파일의 위치”C:\test\a.txt”와 인쇄물의 처음 세 줄니다., 함수 main()이 FileReader()를 사용하고 FileReader()가 검사 된 예외 FileNotFoundException 을 던지기 때문에 프로그램이 컴파일되지 않습니다. 그것은 또한 사용 readLine()와 close()방법,그리고 이러한 방법도 검사 예외 IOException
출력:
Exception in thread "main" java.lang.RuntimeException: Uncompilable source code - unreported exception java.io.FileNotFoundException; must be caught or declared to be thrown at Main.main(Main.java:5)
해결을 위 프로그램 우리 중 하나를 지정해야의 예외 목록을 사용하여 발생하거나 우리를 사용할 필요도 있습니다. 우리는 아래 프로그램에서 던지기를 사용했습니다., FileNotFoundException 은 ioexception 의 하위 클래스이므로 throw 목록에 IOException 을 지정하고 위의 프로그램 컴파일러-오류없이 만들 수 있습니다.
출력:세선의 파일을”C:\test\a.txt”
2)되지 않은 경우에는 예외 없는 검사에서 컴파일한 시간입니다. C++에서는 모든 예외가 선택되지 않으므로 컴파일러가 예외를 처리하거나 지정하도록 강요하지 않습니다. 문명화되고 예외를 지정하거나 잡는 것은 프로그래머에게 달려 있습니다.,
Java 예외에서 오류 및 RuntimeException 클래스는 검사되지 않은 예외이며 throwable 아래의 다른 모든 것은 검사됩니다.
+-----------+ | Throwable | +-----------+ / \ / \ +-------+ +-----------+ | Error | | Exception | +-------+ +-----------+ / | \ / | \ \________/ \______/ \ +------------------+ unchecked checked | RuntimeException | +------------------+ / | | \ \_________________/ unchecked
다음 Java 프로그램을 고려하십시오. 그것은 잘 컴파일되지만 실행될 때 ArithmeticException 을 던집니다. ArithmeticException 은 검사되지 않은 예외이기 때문에 컴파일러를 사용하면 컴파일 할 수 있습니다.,2b7cfd03″>
;
int
y =
10
;
int
z = y/x;
}
}
Output:
Exception in thread "main" java.lang.ArithmeticException: / by zero at Main.main(Main.java:5)Java Result: 1
Why two types?,
자세한 내용은 확인되지 않은 예외—논쟁을 참조하십시오.예외를 확인하거나 선택하지 않아야합니까?
다음은 Java 문서의 최종선입니다.
클라이언트가 예외에서 합리적으로 복구 할 것으로 예상 할 수 있다면 체크 된 예외로 만드십시오. 면 클라이언트는 아무것도 할 수 없으며 예외로부터 복구하기 위해,그것은 확인되지 않은 제외
Java 코너에 GeeksforGeeks
작성하시기 바랍 의견을 찾으면 아무것도 잘못된,또는 당신이 원하는 더 많은 것을 공유하는 정보를 주제에 대해 논의했다.
주의 독자! 지금 배우는 것을 멈추지 마십시오., 모든 중요한 Java 기초 개념 컬렉션의 기초와 Java 자바 컬렉션은 물론에서 학생들에게 적당한 가격이 될 산업 준비합니다.