Java의 정석 제 7 장 객체지향개념 II-3 Java 정석 남궁성 강의

Slides:



Advertisements
Similar presentations
비즈쿨 - 정 성 욱 - - 금오공고 비즈쿨 - 정 성 욱 1. 나는 각 단원들의 활동들에 성실하게 참여 하겠습니다. 우리의 다짐 2. 나는 나와 전체의 발전을 위해 각 멘토들의 지도에 순종하겠습니다. 3. 나는 각 단원들을 숙지함으로써 비즈니스 마인드를 함양하고 자신의.
Advertisements

노인복지론 담당교수 : 최 병태 교수님 학과 : 보건복지경영학과 학번 : 이름 : 김 태인 날짜 :
Chap02 자바환경과 자바 프로그램 Section 1 : 자바 개발 환경 Section 2 : 자바 통합 환경 Section 3 : 자바 응용 프로그램과 애플릿 프로그램 Section 4 : 자바 응용 프로그램 Section 5 : 자바 애플릿 프로그램.
미디어 프로그래밍 II 소개.
목 차 I 방위산업의 정의 II 방위산업의 특성 III 방위산업의 현황.
6.1 사용사례 6.2 객체 모델링 6.3 동적 모델링 6.4 시스템 설계 6.5 객체 설계 6.6 디자인 패턴
나의 한 줌은 얼마나 될까? 내가 태어났을 때의 몸무게는 얼마나 되는 걸까? 사진 속 모습과 똑 같게 하려면?
어서와 Java는 처음이지! 제2장 자바 프로그래밍 기초.
- 계산기 GUI 구성하기 - 조원: 박강국 오정은 이귀식 김도윤 안영진.
Introduction to Servlets
컴퓨터 응용 및 실습 Part1. OOP&Java Programming data type Review
미국경제의 신용위기가 한국경제에 미치는 영향
소비자 만족도 설문조사 결과.
목 차 Chapter 1 컴퓨터와 프로그램 Chapter 2 프로그래밍과 운영체제
Java로 배우는 디자인패턴 입문 Chapter 0. UML 과 Design Pattern
4부 클래스 라이브러리 “4부에서는 자바 언어의 API인 클래스 라이브러리에 관해 설명합니다
자바란 무엇인가? JDK의 다운로드 및 설치 방법 Hello, Java 프로그램의 작성 자바 프로그램의 작동 원리
Unit test with JUnit 실습용
2주 실습강의 Java의 기본문법(1) 인공지능연구실.
[ 단원 08 ] 예외처리와 스레드.
2강. JAVA 프로그래밍이란?-II & 변수 JAVA 프로그램 환경설정과 실행 방법 변수란?
메소드 호출과 힙 원격 메소드 호출 서블릿 엔터프라이즈 자바 빈즈
Power Java 제4장 자바 프로그래밍 기초.
10장 객체-지향 프로그래밍 II ©창병모.
JAVA 프로그래밍 6장 객체지향프로그래밍의 핵심.
C++ Component System KASA 김성헌.
2장. UML 기본 개념.
객체지향 언어와 클래스, 객체 ㅎㅎ 개요 클래스의 선언, 객체의 생성 및 속성 참조 방식 멤버 변수 메소드 한빛미디어(주)
프로그램 개발과 언어 Chapter 05 컴퓨터의 이해
명품 Java Programming.
2장 자바환경과 자바 프로그램 2.1 자바 개발 환경 2.2 자바 통합환경 2.3 자바 응용 프로그램과 애플릿 프로그램
Power Java 제20장 패키지.
성탄절을 향한 길에서.
사 회 1학년 II. 자연환경과 인간생활> 2. 기후와 인간생활[5/7] 기온 분포와 주민생활 수업 계획 수업 활동.
제1장 서론.
2009학년도 1학기 상지대학교 컴퓨터정보공학부 고 광 만
올바른 이메일 사용법
Choi Younghwan CSE HUFS
어서와 Java는 처음이지! 제9장 인터페이스, 패키지.
03. 안드로이드를 위한 Java 문법 제목. 03. 안드로이드를 위한 Java 문법 제목.
1. 세포의 구조와 기능 (1) 식물 세포 와 동물 세포 조영희
인터렉티브(interactive) 주문창
제1장 자료구조를 배우기 위한 준비.
칼빈의 생애와 개혁자로의 변모 사학과 김종식.
국제의료관광 관련 법, 제도.
SpringFramework 중간고사 요약 REST by SpringFramework.
Java Chapter 4 ~ 주차.
컴퓨터공학실습(I) 3주 인공지능연구실.
myfood.com 상명대 맛집 홈페이지 구축 제안서
각종 연결 프로그램이 실행되지 않을 때 도움말을 클릭하세요
CACM 구현 public class CACM { public CACM(File file)
II. 태양계와 지구 II-2. 지구 구성 원소와 지구계 4. 지구의 자기장.
기업회생 절차.
2. 윤리학의 원리와 적용 가. 상대주의와 절대주의.
남아메리카 선교 김수정, 이하정 전희진, 장성경.
[ 단원 06 ] 상속과 다형성.
중등교원 전보시스템 로그인 오류시 해결 해결방안 * 작성일 2016 년 12 월 15일 * 작성자 광주광역시교육청.
UML과 객체지향 모델링 UML의 개요 객체지향 모델링.
CHAPTER 9-1 한국의 사회복지정책 - 사회보험제도 -
地方自治團體의 財政 < 地方自治團體의 財政 > 1. 意義
2015년 2학년 1반.
제9주 예산 수립과 집행.
김진승 한국물리학회 교육위원장, 전북대학교 물리학과
합성. 그리고 몽타주. 평생교육학과 도은아.
자료구조 강의소개 정성훈 연락처 : 이메일 : 연구실 : 연219호 연락처 : 이메일 : 홈페이지: 정성훈.
Chapter2 : 자바환경과 자바 프로그램 2.1 자바 개발 환경 2.2 자바 통합개발환경(IDE)
Chapter8 : 인터페이스와 패키지 8.1 인터페이스 개요와 인터페이스 정의 8.2 인터페이스의 사용
경찰학 세미나 제 5 강 경찰관직무집행법 2조 5호의 의미 신라대학교 법경찰학부 김순석.
2 비주얼 베이직 시작하기 천리 길도 한 걸음부터! 기초부터 다지자..
제3장 선교 구역.반장학교 제1단계.
Presentation transcript:

Java의 정석 제 7 장 객체지향개념 II-3 Java 정석 2009. 10. 27 남궁성 강의 Chapter 7. 객체지향개념 II http://www.javachobo.com Java의 정석 제 7 장 객체지향개념 II-3 안녕하십니까? 자바의 정석의 저자 남궁성입니다. 지금부터 제7장 객체지향개념2의 두 번째 강의를 시작하겠습니다. 2009. 10. 27 남궁성 강의 castello@naver.com

객체지향개념 II-1 객체지향개념 II-2 객체지향개념 II-3 Java 1. 상속 2. 오버라이딩 의 정석 Chapter 7. 객체지향개념 II http://www.javachobo.com 1. 상속 객체지향개념 II-1 2. 오버라이딩 3. package와 import 4. 제어자 객체지향개념 II-2 5. 다형성 7장도 분량이 많기 때문에 이와 같이 3개의 부분으로 나누어서 강좌를 제작하였습니다. 이번엔 세번째 부분인 추상클래스와 인터페이스에 대해서 설명드리겠습니다. 6. 추상클래스 객체지향개념 II-3 7. 인터페이스

Java 6. 추상클래스(abstract class) 6.1 추상클래스(abstract class)란? 의 정석 Chapter 7. 객체지향개념 II http://www.javachobo.com 6. 추상클래스(abstract class) 6.1 추상클래스(abstract class)란? 6.2 추상메서드(abstract method)란? 6.3 추상클래스의 작성 7. 인터페이스(interface) 7.1 인터페이스(interface)란? 7.2 인터페이스의 작성 7.3 인터페이스의 상속 세부목차인데요. 이 강의는 이와 같은 순서로 진행될 것입니다. 7.4 인터페이스의 구현 7.5 인터페이스를 이용한 다형성 7.6 인터페이스의 장점 7.7 인터페이스의 이해

6. 추상클래스(abstract class) Java 의 정석 Chapter 7. 객체지향개념 II http://www.javachobo.com 6. 추상클래스(abstract class)

6.1 추상클래스(abstract class)란? Java 의 정석 Chapter 7. 객체지향개념 II http://www.javachobo.com 6.1 추상클래스(abstract class)란? - 클래스가 설계도라면 추상클래스는 ‘미완성 설계도’ - 추상메서드(미완성 메서드)를 포함하고 있는 클래스 * 추상메서드 : 선언부만 있고 구현부(몸통, body)가 없는 메서드 - 일반메서드가 추상메서드를 호출할 수 있다.(호출할 때 필요한 건 선언부) - 완성된 설계도가 아니므로 인스턴스를 생성할 수 없다. - 다른 클래스를 작성하는 데 도움을 줄 목적으로 작성된다. 5 5

6.2 추상메서드(abstract method)란? Java 의 정석 Chapter 7. 객체지향개념 II http://www.javachobo.com 6.2 추상메서드(abstract method)란? - 선언부만 있고 구현부(몸통, body)가 없는 메서드 - 꼭 필요하지만 자손마다 다르게 구현될 것으로 예상되는 경우에 사용 - 추상클래스를 상속받는 자손클래스에서 추상메서드의 구현부를 완성해야 한다. 6 6

Java 6.3 추상클래스의 작성 정석 - 여러 클래스에 공통적으로 사용될 수 있는 추상클래스를 바로 작성하거나 Chapter 7. 객체지향개념 II http://www.javachobo.com 6.3 추상클래스의 작성 - 여러 클래스에 공통적으로 사용될 수 있는 추상클래스를 바로 작성하거나 기존클래스의 공통 부분을 뽑아서 추상클래스를 만든다. 7 7

7. 인터페이스(interface) Java 정석 의 Chapter 7. 객체지향개념 II 8 http://www.javachobo.com 7. 인터페이스(interface) 8

Java 7.1 인터페이스(interface)란? 정석 의 정석 Chapter 7. 객체지향개념 II http://www.javachobo.com 7.1 인터페이스(interface)란? - 일종의 추상클래스. 추상클래스(미완성 설계도)보다 추상화 정도가 높다. - 실제 구현된 것이 전혀 없는 기본 설계도.(알맹이 없는 껍데기) - 추상메서드와 상수만을 멤버로 가질 수 있다. - 인스턴스를 생성할 수 없고, 클래스 작성에 도움을 줄 목적으로 사용된다. - 미리 정해진 규칙에 맞게 구현하도록 표준을 제시하는 데 사용된다. 9 9

Java 의 정석 Chapter 7. 객체지향개념 II http://www.javachobo.com 7.2 인터페이스의 작성 - ‘class’대신 ‘interface’를 사용한다는 것 외에는 클래스 작성과 동일하다. - 하지만, 구성요소(멤버)는 추상메서드와 상수만 가능하다. 10 10

Java 7.3 인터페이스의 상속 정석 - 인터페이스도 클래스처럼 상속이 가능하다.(클래스와 달리 다중상속 허용) Chapter 7. 객체지향개념 II http://www.javachobo.com 7.3 인터페이스의 상속 - 인터페이스도 클래스처럼 상속이 가능하다.(클래스와 달리 다중상속 허용) - 인터페이스는 Object클래스와 같은 최고 조상이 없다. 11 11

Java 7.4 인터페이스의 구현 정석 - 인터페이스를 구현하는 것은 클래스를 상속받는 것과 같다. Chapter 7. 객체지향개념 II http://www.javachobo.com 7.4 인터페이스의 구현 - 인터페이스를 구현하는 것은 클래스를 상속받는 것과 같다. 다만, ‘extends’ 대신 ‘implements’를 사용한다. - 인터페이스에 정의된 추상메서드를 완성해야 한다. - 상속과 구현이 동시에 가능하다. 12 12

Java 7.5 인터페이스를 이용한 다형성 정석 - 인터페이스 타입의 변수로 인터페이스를 구현한 클래스의 인스턴스를 Chapter 7. 객체지향개념 II http://www.javachobo.com 7.5 인터페이스를 이용한 다형성 - 인터페이스 타입의 변수로 인터페이스를 구현한 클래스의 인스턴스를 참조할 수 있다. - 인터페이스를 메서드의 매개변수 타입으로 지정할 수 있다. - 인터페이스를 메서드의 리턴타입으로 지정할 수 있다. 13 13

Java 7.6 인터페이스의 장점 정석 1. 개발시간을 단축시킬 수 있다. 2. 표준화가 가능하다. Chapter 7. 객체지향개념 II http://www.javachobo.com 7.6 인터페이스의 장점 1. 개발시간을 단축시킬 수 있다. 일단 인터페이스가 작성되면, 이를 사용해서 프로그램을 작성하는 것이 가능하다. 메서드를 호출하는 쪽에서는 메서드의 내용에 관계없이 선언부만 알면 되기 때문이다. 그리고 동시에 다른 한 쪽에서는 인터페이스를 구현하는 클래스를 작성하도록 하여, 인터페이스를 구현하는 클래스가 작성될 때까지 기다리지 않고도 양쪽에서 동시에 개발을 진행할 수 있다. 2. 표준화가 가능하다. 프로젝트에 사용되는 기본 틀을 인터페이스로 작성한 다음, 개발자들에게 인터페이스를 구현하여 프로그램을 작성하도록 함으로써 보다 일관되고 정형화된 프로그램의 개발이 가능하다. 3. 서로 관계없는 클래스들에게 관계를 맺어 줄 수 있다. 서로 상속관계에 있지도 않고, 같은 조상클래스를 가지고 있지 않은 서로 아무런 관계도 없는 클래스들에게 하나의 인터페이스를 공통적으로 구현하도록 함으로써 관계를 맺어 줄 수 있다. 4. 독립적인 프로그래밍이 가능하다. 인터페이스를 이용하면 클래스의 선언과 구현을 분리시킬 수 있기 때문에 실제구현에 독립적인 프로그램을 작성하는 것이 가능하다. 클래스와 클래스간의 직접적인 관계를 인터페이스를 이용해서 간접적인 관계로 변경하면, 한 클래스의 변경이 관련된 다른 클래스에 영향을 미치지 않는 독립적인 프로그래밍이 가능하다. 14 14

Java 7.6 인터페이스의 장점 – 예제 정석 의 Chapter 7. 객체지향개념 II 15 15 http://www.javachobo.com 7.6 인터페이스의 장점 – 예제 15 15

Java 7.7 인터페이스의 이해(1/3) 정석 ▶ 인터페이스는… Chapter 7. 객체지향개념 II http://www.javachobo.com 7.7 인터페이스의 이해(1/3) ▶ 인터페이스는… - 두 대상(객체) 간의 ‘연결, 대화, 소통’을 돕는 ‘중간 역할’을 한다. - 선언(설계)와 구현을 분리시키는 것을 가능하게 한다. ▶ 인터페이스를 이해하려면 먼저 두 가지를 기억하자. - 클래스를 사용하는 쪽(User)과 클래스를 제공하는 쪽(Provider)이 있다. - 메서드를 사용(호출)하는 쪽(User)에서는 사용하려는 메서드(Provider)의 선언부만 알면 된다. 16 16

Java 7.7 인터페이스의 이해(2/3) 정석 ▶ 직접적인 관계의 두 클래스(A-B) Chapter 7. 객체지향개념 II http://www.javachobo.com 7.7 인터페이스의 이해(2/3) ▶ 직접적인 관계의 두 클래스(A-B) ▶ 간접적인 관계의 두 클래스(A-I-B) 17 17

Java 7.7 인터페이스의 이해(3/3) 정석 의 Chapter 7. 객체지향개념 II 18 18 http://www.javachobo.com 7.7 인터페이스의 이해(3/3) 18 18

감사합니다. http://www.javachobo.com Java 정석 의 정석 Chapter 7. 객체지향개념 II http://www.javachobo.com 감사합니다. 더 많은 동영상강좌를 아래의 사이트에서 구하실 수 있습니다. http://www.javachobo.com 이것으로 제 7장 객체지향개념II-3에 대한 강의를 모두 마치겠습니다. 감사합니다. 이 동영상강좌는 비상업적 용도일 경우에 한해서 저자의 허가없이 배포하실 수 있습니다. 그러나 일부 무단전제 및 변경은 금지합니다. 관련문의 : 남궁성 castello@naver.com