자바 5.0 프로그래밍.

Slides:



Advertisements
Similar presentations
Transaction ㅇ Transaction 을 직접 구현하려면, 까다로운 설계와 복잡한 코드를 필요로 하고 수정에 공수가 많이 들게 된다. ㅇ 스프링에서 제공하는 Transaction Manager 를 사용하여 쉽고 간편하게 어려운 트랜잭션을 해결할 수 있다. xml.
Advertisements

비즈쿨 - 정 성 욱 - - 금오공고 비즈쿨 - 정 성 욱 1. 나는 각 단원들의 활동들에 성실하게 참여 하겠습니다. 우리의 다짐 2. 나는 나와 전체의 발전을 위해 각 멘토들의 지도에 순종하겠습니다. 3. 나는 각 단원들을 숙지함으로써 비즈니스 마인드를 함양하고 자신의.
명품 JAVA Programming 제 3 장 반복문, 배열, 예외처리.
아름다운 이들의 행복한 길음안나의 집.
11장. 프로토콜 핸들러 AI &HC I LAB 김 성 현.
14. 위피 게임: 가위바위보 게임 초기에 점수=0 처음 이기면 10 점 그 다음부터 이기면 점수=현재 점수*2 지면
어서와 Java는 처음이지! 제2장 자바 프로그래밍 기초.
10. 예외 처리.
컴퓨터 응용 및 실습 Part1. OOP&Java Programming data type Review
2장 닷넷 프레임워크.
IntArray[0] int length 5 intArray 객체 제 3 장 반복문, 배열, 예외처리.
어서와 Java는 처음이지! 제2장 자바 프로그래밍 기초.
Programming for the java Virtual machine
제14장 원격 메소드 호출 김 기 환. 조 명 휘.
어서와 Java는 처음이지! 제14장 오류처리하기.
제 4장 문 장 배정문 혼합문 제어문 표준 입출력.
제 12장 예외 처리 12.1 설계 쟁점 12.2 PL/I의 ON-조건 12.3 Ada의 예외 처리
제6장 제어(Control) 6.1 구조적 프로그래밍(Structured Programming)
Chapter 11 – 예외 처리 Outline 11.1 설계 쟁점 11.2 Pl/I의 예외 처리 11.3 Ada의 예외 처리
10장 예외 처리 프로그래밍 언어론 10.6 Pascal과 C의 에러 처리 10.1 설계 주제 10.2 PL/I의 예외 처리
명품 C++ 13장 예외 처리와 C 언어와의 링크 지정.
자바란 무엇인가? JDK의 다운로드 및 설치 방법 Hello, Java 프로그램의 작성 자바 프로그램의 작동 원리
5 익셉션 처리.
임베디드 프로그래밍 Lecture #
[INA470] Java Programming Youn-Hee Han
제7장 제어구조 I – 식과 문장.
음악 재생 프로그램 예외 처리 방법 try/catch 블록 예외 선언 방법
[ 단원 08 ] 예외처리와 스레드.
메소드 호출과 힙 원격 메소드 호출 서블릿 엔터프라이즈 자바 빈즈
Power Java 제4장 자바 프로그래밍 기초.
8장 자바 입출력.
Power Java 제15장 예외 처리 (Exception Handling).
01. 직렬화와 역직렬화에 대하여 객체의 직렬화 직렬화와 역직렬화
AOP 개념 및 Spring의 AOP 기능.
10장 예외 (Exceptions).
Lesson 9. 예외처리.
Chapter 07 소스코드의 취약점 분석.
명품 Java Programming.
Chap07 예외 처리 7.1 예외의 개요 7.2 예외 관련 클래스 7.3 예외 처리.
Hadoop 김연왕
2장 자바환경과 자바 프로그램 2.1 자바 개발 환경 2.2 자바 통합환경 2.3 자바 응용 프로그램과 애플릿 프로그램
DataScience Lab. 박사과정 김희찬 (월)
Android Coding Convention
주소록 프로그램.
JDBC (Java Database Connectivity)
제1장 서론.
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
DataScience Lab. 박사과정 김희찬 (월)
03. 안드로이드를 위한 Java 문법 제목. 03. 안드로이드를 위한 Java 문법 제목.
제 2장 어휘구조와 자료형 토 큰 리 터 럴 주 석 자 료 형 배 열 형.
칼빈의 생애와 개혁자로의 변모 사학과 김종식.
프로그래밍 개론 Ⅰ 제 1장 . 서론 ①.
DataScience Lab. 박사과정 김희찬 (월)
국제의료관광 관련 법, 제도.
[INA470] Java Programming Youn-Hee Han
컴퓨터공학실습(I) 3주 인공지능연구실.
Sep Youn-Hee Han Chapter 04. 예외 Sep Youn-Hee Han
자바 5.0 프로그래밍.
자바 5.0 프로그래밍.
Java 3장. 자바의 기본 구조 I : 변수, 자료형, 연산자 public class SumTest {
Barat을 이용한 Code Transformation
JVM의 구조와 메모리 모델 JVM의 내부 구조 클래스 파일 클래스 로더 메소드(method) 영역 힙(heap) 영역
CHAPTER 9-1 한국의 사회복지정책 - 사회보험제도 -
C# 10장. 참조형.
컴퓨터 프로그래밍: 실습 1 제 1장 . 서론.
6월 1주 주간메뉴표 NEW 엄마손 조식 쉐프 삼촌 중식 참새 방앗간 석식 ◎원산지 안내 : 쌀(국내산)
자료구조 강의소개 정성훈 연락처 : 이메일 : 연구실 : 연219호 연락처 : 이메일 : 홈페이지: 정성훈.
유예 X-FILE *조사자* 1301권희원 1315이예지 1317장아정 1322홍자현.
경찰학 세미나 제 5 강 경찰관직무집행법 2조 5호의 의미 신라대학교 법경찰학부 김순석.
임베디드 프로그래밍 Lecture #
Presentation transcript:

자바 5.0 프로그래밍

chapter 09 : 예외처리

학습목표 오류 ( Error )란? 시스템 정의 예외처리 사용자 정의 예외처리 Assertion try/catch 문 throws 문 사용자 정의 예외처리 Assertion

정의 자바언어의 오류 종류 치명적인 오류 가벼운 오류 오류 ( Error ) 프로그램 수행시 의도하지 않게 발생되는 문제점 프로그래머가 해결할 수 없는 오류 JVM 에 의존해서 해결한다. 예외 ( Exception ) 가벼운 오류 프로그래머가 해결할 수 있는 오류 프로그래밍에 의존해서 해결한다.

정의 특징 예외 처리 ( Exception Handling ) 예외가 발생되었을 때 정상종료 되도록 처리하는 작업. 예외가 발생하면 자바언어는 예외를 모두 객체로 인식한다. 발생한 예외를 예외처리 할 수 있도록 Exception 클래스가 제공 된다.

컴파일러가 명시적으로 예외처리를 요구하지 않는다. 예외 처리 ( Exception Handling ) 컴파일 처리방식에 따른 분류 Checked Exception 컴파일러가 명시적으로 예외처리를 요구한다. 예외처리를 안하면 컴파일 에러가 발생된다. IOException , SQLException Unchecked Exception 컴파일러가 명시적으로 예외처리를 요구하지 않는다. 예외처리보다는 디버깅으로 해결한다. RuntimeException

API에서 제공된 Exception 클래스로 예외처리 예외 처리 ( Exception Handling ) Exception 클래스에 따른 분류 시스템 정의 Exception API에서 제공된 Exception 클래스로 예외처리 IOException , SQLException , RuntimeException 사용자 정의 Exception 개발자가 필요에 의해서 만든 Exception 클래스로 예외처리. 반드시 Exception 클래스를 상속받아야 한다.

3: 객체생성한 Exception을 예외 발생된 곳으로 던진다. 예외 처리 ( Exception Handling ) 예외처리 기본개념 … //예외발생 …. JVM 3: 객체생성한 Exception을 예외 발생된 곳으로 던진다. ( throw ) 1:예외가 발생되면 JVM 에게 예외를 던진다. 2: JVM은 예외를 분석하여 알맞은 Exception 클래스를 객체생성 한다. 4: 발생된 곳에서 예외처리를 안하면 프로그램은 비정상 종료된다.

예외처리 방법 try/catch 문 이용 예외 처리 ( Exception Handling ) try / catch 문 이용 throws 이용 try/catch 문 이용

예외처리 안 했을 경우 예제 JVM 예외 처리 ( Exception Handling ) 3: 객체생성한 Exception을 예외 발생된 곳으로 던진다. ( throw ) 4: 발생된 곳에서 예외처리를 안하면 프로그램은 비정상 종료된다. 2: JVM은 예외를 분석하여 알맞은 Exception 클래스를 객체생성 한다.이 예제에서는 ArrayIndexOutOfBoundsException 이 발생.

예외처리 했을 경우 예제 JVM 예외 처리 ( Exception Handling ) 2: JVM은 예외를 분석하여 알맞은 Exception 클래스를 객체생성 한다.이 예제에서는 ArrayIndexOutOfBoundsException 이 발생. 3: 객체생성한 Exception을 예외 발생된 곳으로 던진다. ( throw ) 4 : JVM이 던진 Exception 객체를 catch 블록이 잡는다. 5 : 예외처리를 해서 프로그램이 정상종료 된다.

다중 catch 문 예외 처리 ( Exception Handling ) 많아진다. catch문은 순차적으로 실행되며 발생된 예외와 일치하는 catch 문을 수행한다.

다중 catch 문 사용시 주의사항 예외 처리 ( Exception Handling ) Exception 계층구조에서 상위클래스는 나중에 catch 처리한다. 하위클래스 상위클래스

예외 처리 ( Exception Handling ) 예제

finally 문 예외 처리 ( Exception Handling ) 예외 발생여부와 상관없이 반드시 수행되는 문. file 및 데이터베이스 접근시 유용하게 사용된다.

예외 처리 ( Exception Handling ) 예제

throws 이용 예외 처리 ( Exception Handling ) 메소드 호출 메커니즘

throws 이용 방법 예외 처리 ( Exception Handling ) 예외가 발생한 곳에서 예외처리를 안하고 호출한 곳으로 발생된 예외를 떠 넘긴다. 적어도 main메소드에서는 try/catch 예외처리를 해야한다. RuntimeException 계열은 throws 할 필요없다. 방법 메소드 선언시 throws Exception클래스 를 지정한다. public void b() throws Exception { .. }

예외 처리 ( Exception Handling ) 예제

명시적 예외클래스 생성 발생방법 용도 주의사항 예외 처리 ( Exception Handling ) 명시적( 강제적)으로 예외를 발생 시킬수 있다. 발생방법 throw new Exception클래스( [args] ); 용도 사용자 정의 Exception 클래스로 예외처리시 사용 필요에 의한 Exception 클래스 예외발생시 사용 주의사항 반드시 try/catch 로 예외처리를 해주어야 한다.

예외 처리 ( Exception Handling ) 예제

정의 작성순서 사용자 정의 Exception 개발자가 필요에 의해서 만든 Exception 클래스를 의미한다.

작성순서 사용자 정의 Exception 2. 프로그램에서 특정 조건에 해당되는 경우 Exception를 명시적으로 발생시킨다. 명시적으로 발생시킨다. 3. 발생된 Exception 을 예외처리한다.

boolean 값이 false 인 경우에는 AssertError가 발생되어 Assertion 정의 어떤 내용에 대해서 확실한 단언을 할 때 사용하는 단어. 용도 프로그램의 논리흐름상 특정변수의 값은 반드시 어떤 값이 되어야 한다는 점을 이야기할 때 사용된다. 디버깅 용으로 사용된다. 실행시에 화면출력 없이 변수나 코드의 흐름에 대해서 검증할 수 있는 코드작성이 가능하다. 방법 assert [boolean 식]; boolean 값이 false 인 경우에는 AssertError가 발생되어 비정상 처리된다. assert [boolean 식]: 실행문 ; boolean 값이 false 인 경우에 실행문이 실행된다.

컴파일 실행 Assertion 기본적으로 Assertion 기능이 수행되지 않도록 되어있다. javac –source 1.5 파일명.java 실행 java –ea 파일명 -ea : Enable Assertions라고 해서 단언기능을 사용 가능하게 하는 옵션이다. -da : Disable Assertions라고 해서 단언기능을 사용 못하게 하는 옵션이다.

Assertion 예제

요약 정리 try/catch throws finally 사용자 정의 Exception 클래스 throw Assertion