Part 3 객체지향 Chapter 5 : 객체지향 개념 Chapter 6 : 클래스 : 속성

Slides:



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

Copyright © 2015 Pearson Education, Inc. 6 장 : 프로그래밍 언어.
노인복지론 담당교수 : 최 병태 교수님 학과 : 보건복지경영학과 학번 : 이름 : 김 태인 날짜 :
2014년도 주요법령 개정사항 (월) ~ (금) 대한전문건설협회 강원도회.
1. 기관별 맞춤형 집중교육 : 실습 및 개인별 집중지도    1. 기관별 맞춤형 집중교육 : 실습 및 개인별 집중지도 (상설) 기관별 맞춤형 교육 - 당 교육기관에서.
기획서 작성법
설계 프로젝트 경진대회 성결대학교 컴퓨터공학과 내가 꾸미는 우리 집 팀장 김용훈 김경희 김미선 김헌진.
김성신 컴퓨터전자통신학부 연변과학기술대학교
Chapter 2 정보시스템 아키텍처 (IS Architecture)
미국경제의 신용위기가 한국경제에 미치는 영향
행복한 부자교실 16기 8조 성동구 성수동 답사 결과 12월 22일 발표.
C++ Espresso 제1장 기초 사항.
PART 01 총 론 제9장 한국 사회복지법제의 형성과 발전.
강좌명 : C++프로그래밍 (C++ Programming)
Ruby on Rails – 1. Ruby Aon의 공부하면서 만드는 세미나 1탄.
Internet Computing KUT Youn-Hee Han
2주 실습강의 Java의 기본문법(1) 인공지능연구실.
8. 객체와 클래스 (기본).
C++ 프로그래밍 2009년 2학기 전자정보공학대학 컴퓨터공학부.
C++ 프로그래밍 2007년 1학기 전자정보공학대학 컴퓨터공학부.
C++ Component System KASA 김성헌.
자바 5.0 프로그래밍.
프로그래밍 언어론 제 9 장 객체 지향 개념 객체 지향 방법론 객체 모델링 객체 지향 언어 C++ 객체 지향 언어 CLOS
프로그램 개발과 언어 Chapter 05 컴퓨터의 이해
Visual C++ Programming
2장 자바환경과 자바 프로그램 2.1 자바 개발 환경 2.2 자바 통합환경 2.3 자바 응용 프로그램과 애플릿 프로그램
2010학년도 2학기 객체지향의 이해.
Power Java 제7장 클래스와 객체.
프리젠테이션 활용 및 데이터활용 Chapter 6 인쇄 미리 보기와 인쇄 김 정 석
김 정 석 Web Programming 김 정 석
시스템 분석 및 설계.
Visual Basic 기초 1 목표: 컴퓨터기반제어에 관련된 학습을 하기 전에 Visual Basic의 기초를 살펴본다.
Power Java 제1장 자바 소개.
DirectX 3D 7개월차 김성도 3D 5인 프로젝트.
소프트웨어 공학 (Software Engineering)
메소드와 클래스 정의 및 문제 풀이 Method and Class Define and Problem Solve
제 1장 서론 Hello!! C 언어 강성호 김학배 최우영.
칼빈의 생애와 개혁자로의 변모 사학과 김종식.
국제의료관광 관련 법, 제도.
제 4장. 객체 지향 프로그래밍 시작하기 학기 프로그래밍언어및실습 (C++).
Java IT응용시스템공학과 김형진 교수 5장. 객체지향 개념 public class SumTest {
Chapter3 : 객체지향의 개념 3.1 객체지향(object-oriented)과
Chap02 객체 지향 개념 2.1 객체지향(object-oriented)과 절차지향(procedural-oriented)
JA A V W. 04.
CHAPTER 06 청소년의 행동문화 : 폭력(따돌림), 위험행동, 참여.
JA V A W. 07 Sb.L.
Chapter 02. 소프트웨어와 자료구조.
북한 이탈 주민 실태와 문제점 Part 0 탈북자 인권 현대 사회 인권 조선해양 공학부 정세용
남아메리카 선교 김수정, 이하정 전희진, 장성경.
[ 단원 06 ] 상속과 다형성.
Chapter 13 – 객체 지향 프로그래밍 Outline 13.1 소프트웨어의 재사용과 독립성
3장,4장 발표 서정우.
CHAPTER 9-1 한국의 사회복지정책 - 사회보험제도 -
언어 언어 사람 사람 사람들간의 의사 소통을 위한 수단
2015년 2학년 1반.
Part 02. 파워포인트 실무와 활용.
한양인 주차정기권 신청 안내 2018년 2학기 관리처 관재팀.
선의관악종합사회복지관 김정현.
Chapter 14 – 객체 지향 프로그래밍 Outline 14.1 소프트웨어의 재사용과 독립성
Java 5장. 객체지향 개념 public class SumTest {
Part 정비사업의 절차 1 ※ : 도시주거환경정비기본계획 도시·주거환경 정비계획(안) 작성 도시·주거환경정비 기본계획 수립
“알콜중독자 대상 심리안정 프로그램”.
노인학대예방 교육 교육강사 시 설 장 송나겸 보성실버센터.
11장 다형성과 추상 클래스, 인터페이스 Section 1 객체의 형 변환 Section 2 연산자 Section 3 다형성
제2장 방과후 아동지도의 사회적 요구.
C++ 언어의 특징
Chapter 1 인간행동의 이해와 사회복지실천
발 표 자 : 7조 손 창 국 윤 오 성, 박 진 완 객체 지향 프로그래밍 C++
경찰학 세미나 제 5 강 경찰관직무집행법 2조 5호의 의미 신라대학교 법경찰학부 김순석.
남자의피부의 고민을 한번에 싹~ 해결해주는 옴므라인
Presentation transcript:

Part 3 객체지향 Chapter 5 : 객체지향 개념 Chapter 6 : 클래스 : 속성 3부는 이 책의 핵심으로서 자바의 객체지향에 관해 설명하고 있다. 5장에서는 객체지향의 주요 개념들을 도식을 이용하여 명료하게 설명하였다. 6장에서는 클래스의 속성에 해당하는 객체변수에 관해 자세하게 설명하였다. 7장에서는 클래스의 기능에 해당하는 생성자와 메소드에 관해 설명하였다. 8장에서는 클래스의 상속에 관해 기술하였으며, 9장에서는 인터페이스와 예외처리를 기술하였다..

객체지향 개념 CHAPTER 5 Section 1 객체지향의 개요 Section 2 클래스와 객체 Section 3 상속

Section 1 객체지향의 개요 객체지향 이론과 역사 컴퓨터를 통하여 실세계와 같은 환경을 흉내(simulation)내기 위해 발전한 이론 실세계의 모든 사물들은 “속성+기능”으로 구성 실세계의 사물들은 각기 다른 속성과 기능을 가지고 상호작용하여 살아간다

Section 1 객체지향의 개요 객체지향 이론과 역사-실세계의 객체지향

Section 1 객체지향의 개요 객체지향 이론과 역사 객체지향 이론은 1960년대 클래스(class), 상속(inheritance), 캡슐화(encapsulation), 다형성(polymorphism) 등의 개념을 중심으로 발전 1960년 노르웨이의 달(Dahl)과 뉘고르(Nygaard)가 개발한 Simula라는 언어를 최초의 객체지향 언어라 할 수 있다. 이후 객체지향 언어는 Smalltalk, Eiffel, C++ 등을 거쳐 발전

Section 1 객체지향의 개요 객체지향과 절차지향 객체지향과 대비되는 개념으로 절차지향(Procedural-oriented)이 있다 절차지향 : 프로그램의 기본 단위가 절차 또는 함수로 정의되며, 절차 또는 함수에 의해 속성(데이터)들이 공유되는 형태

Section 1 객체지향의 개요 객체지향과 절차지향

Section 1 객체지향의 개요 객체지향의 장점 문제를 쉽고 자연스럽게 프로그램화(모델링) 할 수 있다 쉬운 프로그램의 개발로 인한 생산성 향상 시킬 수 있다 프로그램 모듈을 재사용 할 수 있다

Section 2 클래스와 객체 클래스 클래스는 객체를 생성하는 형판(template) 클래스와 객체는 붕어빵틀과 붕어빵의 관계와 같다

Section 2 클래스와 객체 클래스와 객체의 구성 객체는 “속성 + 기능”으로 구성 객체를 생성하는 클래스 역시 “속성 + 기능”으로 구성 자바 프로그램을 만들기 위해서는... 객체를 생성하기 위한 클래스를 작성하여야 하고 작성된 클래스로부터 객체를 생성하고 생성된 객체 사이의 관계를 정의하여 프로그램을 작성한다

Section 2 클래스와 객체

Section 2 클래스와 객체 객체의 생성 클래스로부터 객체를 생성하는 과정을 실체화(instantiation)라고 한다 객체를 인스턴스(instance)라고 한다

Section 2 클래스와 객체 객체의 생성 하나의 클래스로부터 객체가 생성될 때 모든 객체는 같은 속성과 기능을 가지지만, 속성에 저장된 값은 모두 다르게 지정될 수 있다 기능과 속성은 같지만 속성의 값은 다르게 지정될 수 있다

Section 2 클래스와 객체 객체의 생성

Section 3 상속 상속 기존 클래스의 모든 속성과 기능을 상속받고, 더 필요한 속성과 메소드를 추가하여 새로운 클래스를 생성하는 개념이 상속 추가된 기능

Section 3 상속 상속

Section 3 상속 상속 상속의 확장의 개념을 가지며, 계층 구조를 가질 수 있다

Section 3 상속 상속 상위 클래스의 모든 것을 상속받고 새로운 속성과 메소드가 추가

Section 4 캡슐화 캡슐화 객체가 동작하는 기능만 알고 그 객체를 사용하게 하는 개념 객체의 자세한 동작 방법은 비밀(알려지면 안됨) 비밀을 알려고 하면 오류 발생

Section 4 캡슐화 캡슐화 캡슐화를 통하여 정보 은폐(Information hiding)를 제공 캡슐화(정보은폐)의 장점 객체에 포함된 정보의 손상과 오용을 막는다 객체 내부의 조작 방법이 바뀌어도 사용방법은 바뀌지 않는다 데이터가 바뀌어도 다른 객체에 영향을 주지 않아 독립성이 유지 처리된 결과만 사용하므로 객체의 이식성이 좋다 객체를 부품화 할 수 있어 새로운 시스템의 구성에 부품처럼 사용할 수 있다

Section 4 캡슐화 캡슐화(정보은폐)

Section 4 캡슐화 캡슐화(정보은폐)

Section 5 메시지(Message) 메시지 객체에 일을 시키는 행위 메시지의 구성 메지지를 받을 객체의 이름 메소드 이름 메소드 수행에 필요한 인자(argument)

Section 5 메시지(Message) 메시지 메소드 탐색 메소드를 수행하라는 메시지가 도착하면.... 클래스로부터 생성된 객체는 속성만 가지고 메모리에 생성 메소드는 클래스(클래스 메모리 영역)에 저장되어 객체들이 공유 메소드를 수행하라는 메시지가 도착하면.... 해당 클래스에서 메소드를 찾아 수행 해당 클래스에 없으면, 그 클래스가 상속된 상위 클래스의 메소드를 찾아 수행 위와 같은 과정을 반복하며, 최상위 클래스에서도 메소드가 없으면 오류발생

Section 5 메시지(Message) 메시지 : 메소드 탐색

Section 5 메시지(Message) 메시지 : 메소드를 호출하는 메시지 객체이름 메소드이름 메소드매개변수

Section 6 다형성(Polymorphism) 다형성은 “서로 다른 객체”가 “동일한 메시지”에 대하여 “서로 다른 방법으로 응답”할 수 있는 기능을 의미한다

Section 6 다형성(Polymorphism)

객체지향의 개요 클래스와 객체 Chapter 5 학습정리 ① 객체지향은 실세계의 요소들을 “속성+기능”으로 표현한 것이다. ② 자바는 객체지향 언어를 대표하는 성공한 언어이다. 클래스와 객체 ① 클래스는 객체를 생성하는 형판(template) 역할을 한다. ② 하나의 클래스로부터 다수 개의 객체가 생성된다. ③ 클래스는 “속성+기능”으로 구성된다. ④ 클래스로부터 객체를 생성하는 과정을 실체화(instantiation)라고 하며, 객체를 인스턴스라 부르기도 한다. ⑤ 객체지향은 절차지향과는 달리 프로그램의 기본 단위가 객체(속성+기능)이다.

상속 캡슐화 Chapter 5 학습정리 ① 상속을 이용하여 비슷한 기능을 가진 클래스들을 계층구조 형태로 구성할 수 있다. ② 상속은 상위 클래스의 모든 속성과 기능을 상속받고, 추가로 더 가지는 확장(extend)의 개념이다. ③ 자바에서는 하나의 클래스만을 상위 클래스로 가질 수 있다. 즉 다중상속을 허용하지 않는다. 캡슐화 ① 캡슐화는 꼭 필요한 내용만 보여주고, 불필요한 내용을 감춘다는 개념이다. ② 클래스를 작성할 때는 꼭 필요한 내용만 공개해야 한다. ③ 클래스를 작성할 때 캡슐화 개념을 적용하지 않으면, 클래스가 잘못 사용될 수 있다. ④ 캡슐화의 개념을 적용하여 정보 은폐(Information hiding)를 달성할 수 있다.

메시지 다형성 Chapter 5 학습정리 ① 생성된 객체들 사이의 상호관계를 정의한 것이 메시지이다. ② 메시지를 통하여 객체에 일을 시킨다. ③ 메시지는 객체 이름, 메소드 이름, 메소드 수행에 필요한 인자(argument)를 포함한다. 다형성 ① 다형성은 다양한 변신을 의미하는 개념이다. ② 다형성은 “서로 다른 객체가 동일한 메시지에 대하여 서로 다른 방법으로 응답할 수 있는 기능”을 의미한다.