자바
This presentation is the property of its rightful owner.
Sponsored Links
1 / 27

자바 5.0 프로그래밍 PowerPoint PPT Presentation


  • 93 Views
  • Uploaded on
  • Presentation posted in: General

자바 5.0 프로그래밍. chapter 09 : 예외처리. 학습목표. 오류 ( Error ) 란 ? 시스템 정의 예외처리. try/catch 문 throws 문. 사용자 정의 예외처리 Assertion. 오류 ( Error ). 정의. 프로그램 수행시 의도하지 않게 발생되는 문제점. 자바언어의 오류 종류. 오류 ( Error ). 치명적인 오류 프로그래머가 해결할 수 없는 오류 JVM 에 의존해서 해결한다. 예외 ( Exception ). 가벼운 오류

Download Presentation

자바 5.0 프로그래밍

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


5 0

자바 5.0 프로그래밍


5 0

chapter 09 :

예외처리


5 0

  • 학습목표

  • 오류 ( Error )란?

  • 시스템 정의 예외처리

  • try/catch 문

  • throws 문

  • 사용자 정의 예외처리

  • Assertion


5 0

  • 오류 ( Error )

  • 정의

  • 프로그램 수행시 의도하지 않게 발생되는 문제점

  • 자바언어의 오류 종류

  • 오류 ( Error )

  • 치명적인 오류

  • 프로그래머가 해결할 수 없는 오류

  • JVM 에 의존해서 해결한다.

  • 예외 ( Exception )

  • 가벼운 오류

  • 프로그래머가 해결할 수 있는 오류

  • 프로그래밍에 의존해서 해결한다.


5 0

  • 예외 처리 ( Exception Handling )

  • 정의

  • 예외가 발생되었을 때 정상종료 되도록 처리하는 작업.

  • 특징

  • 예외가 발생하면 자바언어는 예외를 모두 객체로 인식한다.

  • 발생한 예외를 예외처리 할 수 있도록 Exception 클래스가 제공

  • 된다.


5 0

  • 예외 처리 ( Exception Handling )

  • 컴파일 처리방식에 따른 분류

  • Checked Exception

  • 컴파일러가 명시적으로 예외처리를 요구한다.

  • 예외처리를 안하면 컴파일 에러가 발생된다.

  • IOException , SQLException

  • Unchecked Exception

  • 컴파일러가 명시적으로 예외처리를 요구하지 않는다.

  • 예외처리보다는 디버깅으로 해결한다.

  • RuntimeException


5 0

  • 예외 처리 ( Exception Handling )

  • Exception 클래스에 따른 분류

  • 시스템 정의 Exception

  • API에서 제공된 Exception 클래스로 예외처리

  • IOException , SQLException , RuntimeException

  • 사용자 정의 Exception

  • 개발자가 필요에 의해서 만든 Exception 클래스로 예외처리.

  • 반드시 Exception 클래스를 상속받아야 한다.


5 0

3:객체생성한 Exception을 예외 발생된 곳으로 던진다.

( throw )

//예외발생

….

JVM

2: JVM은 예외를 분석하여 알맞은

Exception 클래스를 객체생성 한다.

4:발생된 곳에서 예외처리를 안하면 프로그램은 비정상

종료된다.

1:예외가 발생되면 JVM 에게 예외를 던진다.

  • 예외 처리 ( Exception Handling )

  • 예외처리 기본개념


5 0

  • 예외 처리 ( Exception Handling )

  • 예외처리 방법

  • try / catch 문 이용

  • throws 이용

  • try/catch 문 이용


5 0

2: JVM은 예외를 분석하여 알맞은 Exception 클래스를 객체생성 한다.이 예제에서는 ArrayIndexOutOfBoundsException 이 발생.

JVM

3: 객체생성한 Exception을 예외 발생된 곳으로 던진다. ( throw )

1:예외가 발생되면 JVM 에게 예외를 던진다.

4: 발생된 곳에서 예외처리를 안하면 프로그램은 비정상 종료된다.

  • 예외 처리 ( Exception Handling )

  • 예외처리 안 했을 경우 예제


5 0

2: JVM은 예외를 분석하여 알맞은 Exception 클래스를 객체생성 한다.이 예제에서는 ArrayIndexOutOfBoundsException 이 발생.

JVM

3: 객체생성한 Exception을 예외 발생된 곳으로 던진다. ( throw )

1:예외가 발생되면 JVM 에게 예외를 던진다.

4 : JVM이 던진 Exception 객체를 catch 블록이 잡는다.

5 : 예외처리를 해서 프로그램이 정상종료 된다.

  • 예외 처리 ( Exception Handling )

  • 예외처리 했을 경우 예제


5 0

  • 예외 처리 ( Exception Handling )

  • 다중 catch 문

  • 실행문이 여러 개인 경우 발생할 수 있는 Exception 종류도

  • 많아진다.

  • catch문은 순차적으로 실행되며 발생된 예외와 일치하는

  • catch 문을 수행한다.


5 0

하위클래스

상위클래스

  • 예외 처리 ( Exception Handling )

  • 다중 catch 문 사용시 주의사항

  • Exception 계층구조에서 상위클래스는 나중에 catch 처리한다.


5 0

  • 예외 처리 ( Exception Handling )

  • 예제


5 0

  • 예외 처리 ( Exception Handling )

  • finally 문

  • 예외 발생여부와 상관없이 반드시 수행되는 문.

  • file 및 데이터베이스 접근시 유용하게 사용된다.


5 0

  • 예외 처리 ( Exception Handling )

  • 예제


5 0

  • 예외 처리 ( Exception Handling )

  • throws 이용

  • 메소드 호출 메커니즘

  • throws 기본개념은 메소드 호출 메커니즘을 이용한다.


5 0

  • 예외 처리 ( Exception Handling )

  • throws 이용

  • 예외가 발생한 곳에서 예외처리를 안하고 호출한 곳으로 발생된

  • 예외를 떠 넘긴다.

  • 적어도 main메소드에서는 try/catch 예외처리를 해야한다.

  • RuntimeException 계열은 throws 할 필요없다.

  • 방법

  • 메소드 선언시 throws Exception클래스 를 지정한다.

  • public void b() throws Exception { .. }


5 0

  • 예외 처리 ( Exception Handling )

  • 예제


5 0

  • 예외 처리 ( Exception Handling )

  • 명시적 예외클래스 생성

  • 명시적( 강제적)으로 예외를 발생 시킬수 있다.

  • 발생방법

  • throw new Exception클래스( [args] );

  • 용도

  • 사용자 정의 Exception 클래스로 예외처리시 사용

  • 필요에 의한 Exception 클래스 예외발생시 사용

  • 주의사항

  • 반드시 try/catch 로 예외처리를 해주어야 한다.


5 0

  • 예외 처리 ( Exception Handling )

  • 예제


5 0

  • 사용자 정의 Exception

  • 정의

  • 개발자가 필요에 의해서 만든 Exception 클래스를 의미한다.

  • 작성순서

  • 1. Exception 클래스를 상속받는 사용자정의 클래스를 선언한다.


5 0

  • 사용자 정의 Exception

  • 작성순서

  • 2. 프로그램에서 특정 조건에 해당되는 경우 Exception를

  • 명시적으로 발생시킨다.

  • 3. 발생된 Exception 을 예외처리한다.


5 0

  • Assertion

  • 정의

  • 어떤 내용에 대해서 확실한 단언을 할 때 사용하는 단어.

  • 용도

  • 프로그램의 논리흐름상 특정변수의 값은 반드시 어떤 값이

  • 되어야 한다는 점을 이야기할 때 사용된다.

  • 디버깅 용으로 사용된다.

  • 실행시에 화면출력 없이 변수나 코드의 흐름에 대해서 검증할

  • 수 있는 코드작성이 가능하다.

  • 방법

  • assert [boolean 식];

  • boolean 값이 false 인 경우에는 AssertError가 발생되어

    비정상 처리된다.

  • assert [boolean 식]: 실행문 ;

  • boolean 값이 false 인 경우에 실행문이 실행된다.


5 0

  • Assertion

  • 컴파일

  • 기본적으로 Assertion 기능이 수행되지 않도록 되어있다.

  • javac –source 1.5 파일명.java

  • 실행

  • java –ea 파일명

-ea : Enable Assertions라고 해서 단언기능을 사용 가능하게 하는 옵션이다.

-da : Disable Assertions라고 해서 단언기능을 사용 못하게 하는 옵션이다.


5 0

  • Assertion

  • 예제


5 0

  • 요약 정리

  • try/catch

  • throws

  • finally

  • 사용자 정의 Exception 클래스

  • throw

  • Assertion


  • Login