컴퓨터 공부/MFC 프로그래밍

[5월 13일 1교시] OOP 개요

려리군 2009. 5. 13. 09:35

객체지향

재사용성, 확장성

C++, Java


절차 중심

프로그램 = 자료구조 + 함수

객체 지향

객체 = 자료구조 + 함수

프로그램 = 객체 + 객체


캡슐화(encapsulation)

 어떻게 가져와서 쓸 것인가 중요.

 interface : open된 API

 client는 객체 내부를 알 필요가 없고 interface만 알면 된다.

 객체 조작 방법이 바뀌어도 사용 방법은 바뀌지 않는다.


메세지 : 객체에게 일을 시키는 행위

 - 객체의 이름.

 - 송신 객체가 실행을 원하는 수신 객체의 메소드 이름.

 - 메소드에 전달할 매개변수


인스턴스(instance) : 메모리에 object가 올라온 상황

클래스 : 원형, 특성, 디자인 단계에서의 관심사

객체 : 인스턴스, 상태, 실행 단계에서의 관심사


상속 : 계층구조

Class 접근지정자

public(+), private(-), protected


다형성

have many forms

overriding : 기초(부모) 클래스에서 정의된 메소드에 대해 새롭게 구현

overloading : 함수의 출력 및 입력 형태는 서로 다르지만 같은 이름을 가진 메소드의 생성하는 것.


virtual function

CPt a; // 스택(함수 안에서)

CPt *b = new CPt(); // 힙, 메모리 누수현상 발생 가능.

동적 바인딩


참고주소

http://www.codeguru.com

http://www.devpia.com

http://www.codeproject.com