|
검증(assertion) 요약
1.작성된 코드가 정상적으로 실행되는지 확인하기 위한 디버깅 기법
2. 문법의 확장으로 제공되기 때문에 추가 import문이 필요하지 않음
3. JAVA 1.4에 추가된 기능
4. JAVA 1.4에서 Assertion을 사용하기 위해서는 - source 1.4로 컴파일
5. 자바 5.0에서는 자동으로 인식한다.
사용방법1
표현식이 false라면 AssertionError를 발생
assert 표현식;
사용방법2
표현식1이 false라면 assertionError에 표현식2를 String으로 변환해 전달하는 구조이다.
표현식1에는 boolean형으로 표현되는 식을 작성해야되고 표현식2에는 String형으로 변환될 수 있는 데이터형을 선언해야 한다.
assert 표현식1 : 표현식2;
ex)
assert cup != 4 : "cup==4";
실행결과
Exception in thread "main" java.lang.AssertionError: cup=4
at Test.main(Test.java:4)
|
예외가 발생할 것이 예상되는 함수는 try 블럭 내부에 사용하고, 예외가 발생하면 catch블럭에서 받아서 예외 처리를 시행한다.
public String readLine() throws IOException
위와 같은 함수는 함수 수행 중 내부에 이상이 생기면 이것에 대하여 프로그래머가 이 이상에 대한 예외 처리를 해야 함을 의미한다.
예외(Exception) 요약
1. 경고는 오류와 예외로 분류할 수 있음
2. 오류는 프로긂 실행환경 이상으로 인한 경고
3. 예외는 프로그램 실행과 관련된 경고
4. 컴파일 시간에 경고 체크 유무에 따라 Unchecked와 checked로 분류할 수 있음
오류(Error) 정리
클래스 이름 |
발생 원인 |
ThreadDeath |
실행중인 스레드가 중지되었을 때 발생 |
LinkageError |
클래스가 일치하지 않거나 존재하지 않을 때 발생 |
VirtualMachineError |
자바 가상 머신에 심각한 문제가 발생했을 때 발생 |
확인되지 않은 예외 정리
클래스 이름 |
발생 원인 |
AritmeticException |
0으로 정수를 나눌 때와 같이 적절하지 않은 계산 중 발생 |
NullPointException |
응용프로그램이 객체가 필요한 경우 null을 사용하려고 시도할 때 발생 |
ArrayIndexOutOfBouindsException |
배열이 잘못된 색인으로 접근된 것을 알리기 위해 발생 |
확인된 예외
클래스 이름 |
발생 원인 |
FileNotFoundException |
지정된 경로에서 파일을 찾지 못할 경우 발생 |
IOException |
입출력 오류에 의해 발생 |
SQLException |
데이터베이스 SQL 오류에 의해 발생 |
예외 처리 방법
try {
//예외가 발생할 수 있는 코드
}catch(예외 객체){
//예외가 발생할 수 있는 코드
}finally{
//반드시 처리해야 하는 코드
}
ex)
try
{
str = input_key.readLine();
}
catch (Exception e )
{
}
|
위와 같이 직접 예외를 직접 처리하지 않고 이 함수를 호출하는 함수에게 예외 처리를 위임한느 방법도 있다. 아래와 같이 throws IOExeption을 추개해 주면 된다.
void Test() throws IOException
{
}
이 방법은 Test()라는 함수에서 예외처리를 하지 않을 뿐이지 test()를 호출하는 함수에서 반드시 예외처리를 해야한다.
'컴퓨터프로그래밍 > JAVA' 카테고리의 다른 글
JAVA - 기타 제한자. (0) | 2013.10.04 |
---|---|
JAVA - 접근 제한자. (0) | 2013.09.30 |
JAVA - 분기문 (0) | 2013.09.30 |
JAVA - 조건문 IF (0) | 2013.09.29 |
JAVA-반복문 (0) | 2013.09.28 |