프로그래밍[Univ]/기타

[클래스와 객체] 클래스(Class)와 객체(Object) / 함수호출 통신

Cloud Travel 2011. 9. 12. 12:48
1. 클래스와 객체
 - 클래스
  ⓐ 하나의 타입(type)로서 공통된 것을 추출하여 일반화
  ⓑ 객체/실체(object)를 만들어내는 틀로 객체가 가질 특징만을 정의 → 추상적 정의
  ⓒ 데이터와 메소드(code)로 이뤄져 있다.

 - 객체 / 실체
  ⓐ 추상화된 클래스가 Instantation과정을 거쳐 생성한 인스턴스(Instance)
  ⓑ 구체적 내용을 가지고 있음.

 ※ 인스턴스화(Instantation)과정(by Java)

Student S; // 이름만 생성
S = new Student();
 > new : 클래스에 객체를 생성하라고 명령 / 인스턴스화 진행 및 인스턴스 생성
 > Dynamic Binding 이라고도 하며 이름에 몸체를 붙인 것이다.

2. 함수호출 통신
 각각의 객체는 캡슐화에 의해 다른 객체의 데이터를 직접건들 수 없다. 여러개의 객체를 하나로 묶기 위해 객체들은 서로 메세지나 이벤트를 통해서 통신을 한다. 여기서 통신이란, 데이터 호출 통신으로서 일반적으로 데이터를 주고받는 것을 이야기 하지만 객체 지향에서는 데이터를 직접적으로 건딜수 없기 때문에 함수를호 출하여 통신을 한다. 데이터에 직접적으로 접촉하지 못해서 속도가 떨어지지만, 안정성이 높아진다.
 객체지향프로그램은 객체를 만들고, 객체의 함수 즉, 메소드를 호출하는 것으로 프로그램이 돌아 가는 것이다.