수업

+24 예외처리(throw, throws, finally)

hs_developer 2022. 6. 7. 11:07

throw

-많이 사용하지 않음(테스트 용)

-임의로 발생

throw new 예외처리 생성자()

 

-다음 줄에는 코딩 할 수 없음

(예: throw new Exception())

 

throws

-예외 선언하기 > 라이브러리에서 사용

-예외에 대한 예측이 가능(어떤 에러가 발생할 지 알고 코딩)

-메서드 내에서 예외처리를 하지 않아도 됨

 

예외처리의 단점

-소스코딩, 복잡한 소스 방지

-복구 할 수 없음(시스템에 의해 처리 됨)

 

사용법

-메서드 뒤에 붙인다.

public void display() throws 예외처리 종류

 

-여러 개 선언 할 수 있음

public void disp() throws Exception, SQLException...

 

 

finally

-필요시에만 사용(서버, 파일, 데이터베이스)

 

-try~catch 상관 없이 무조건 수행하는 문장

 

 

public static void main(String[] args) {
		
		FileReader fr = null; // 초기 값을 주고 들어가야 함(클래스는 초기 값이 null)
		
		try
		{
			fr = new FileReader("c:\\javaDev\\melon.txt");
			
			int i=0;
			String data = "";
			while((i=fr.read())!=-1) // melon.txt의 전체문장 읽기
			{
				data += String.valueOf((char)i);
			}
			
			System.out.println(data);
			
		} catch(Exception ex)
		{
			System.out.println(ex.getMessage()); // 에러확인
		}
		
		finally // 파일 닫기
		{
			try {
				fr.close();
			} catch (Exception e) {}

		}
		
	}

 

'수업' 카테고리의 다른 글

+25 라이브러리  (0) 2022.06.08
+24 라이브러리  (0) 2022.06.07
+23 내부클래스, 예외처리  (0) 2022.06.03
+22 super, this, 형변환, 추상클래스, 인터페이스  (0) 2022.06.02
+20 캡슐화, 패키지  (0) 2022.05.30