Class   클래스

(2023-05-13)

1. [객체지향]  클래스 (Class)

  ㅇ 비슷한 특성을 가진 객체들을 그룹화시키는 틀 (객체의 틀,Template)
     - 현실 세계(개념)을 쉽게 코드로 구현키 위해, 
     - 유사한 객체들에 대한 모델링/설계도/틀


2. [객체지향]  클래스에 의한 추상화 

  ㅇ `유사한 객체(Object)들의 집단`에 대한 표현/모델화/추상화
     - 유사한 속성, 공통된 행위, 공통된 관계성, 공통된 의미를 갖음

     * 하나의 클래스 유형으로, 여러가지 다른 객체가 보여질 수 있음
        . 例) 나무라는 클래스에서 잣나무, 전나무 등의 객체들이 나타남


3. [객체지향]  클래스에 의한 추상자료형클래스는, 자료 추상화(Data Abstraction)를 이루는 기초 임
     - 즉, 추상 자료형(Abstract Data Type, ADT)을 구현하기 위한 가장 대표적인 방법 임

  ㅇ 클래스 내 요소들이 서로 긴밀히 묶임
     - 클래스 안에 데이터(속성)와 기능(메소드/함수)들이 함께 들어가고, 서로 긴밀히 묶임
     - 즉, 캡슐화(Encapsulation)됨

  ㅇ 클래스 간 독립적임 (때론, 느슨히 묶임)
     - 한 모듈데이터 구조가 다른 부분에 영향을 주지 않게 함으로써,
     - 프로그램의 각 부분들이 다른 부분에 영향을 주지않고,
     - 독립성을 갖게하는 모듈화가 자연스럽게 이루어짐


4. [객체지향 프로그래밍]  클래스에 의한 프로그래밍클래스
     - 객체지향 소프트웨어 작성의 가장 기본적인 단위로써,
     - 객체를 구현/기술하는 문법 임

  ㅇ 클래스 단위프로그래밍 
     - 유지보수재사용성이 좋게끔, 
        . 연관있는 함수변수들을 모아, 클래스 단위화 함

  ㅇ 결국, 객체지향 소프트웨어 작성이란, 
     - 클래스를 하나씩 만들어 추가해가는 과정으로 볼 수 있음


5. [객체지향 프로그래밍]  클래스 구성, 문법, 특징클래스 내 구성 요소
     - 속성/프로퍼티/필드 (Attribute/Property/Field) 
        . 구별짓는 모양새, 상태 등을 말함
        . 다른 명칭 : 데이터 멤버, 멤버 변수, 클래스 변수, 필드 라고도 불리움

     - 행위/동작/메소드 (Behavior/Method)
        . 어떤 객체클래스가 자신 또는 다른 객체에게 할 수 있는 행동양식
        . 객체에 대한 클래스 동작은 메소드(Method)라는 것을 사용하여 수행함
        . 다른 명칭 : 멤버 함수, 멤버 메소드 라고도 불리움

  ㅇ 클래스 선언 문법
class 클래스명 {
  ... // 프로퍼티 선언
  ... // 메소드 선언
}
클래스 특징 - 동일 클래스에 속한 객체들에 공통점을 줌 . 동일한 동작(같은 일을 수행)을 하며, . 동일한 속성(객체 마다 다른 값)을 갖게 됨 - 클래스 개념의 추가적인 잇점으로, . 추상데이터형 구현 이외에도 상속성다형성 개념도 지원함 6. [객체지향 프로그래밍] 클래스, 객체, 인스턴스 비교클래스 : 비슷한 특성을 가진 객체들을 그룹화시키는 틀을 나타내는 추상적인 개념 ㅇ 객체 : 클래스속성에 따라 생성될 수 있는 것 ㅇ 인스턴스 : 클래스로부터 생성 가능한 객체가 실제 값을 갖고 구체적으로 실현된 것

객체,클래스,인스턴스
   1. 클래스   2. 클래스 멤버   3. 프로퍼티   4. 메소드   5. 객체   6. 인스턴스  


Copyrightⓒ written by 차재복 (Cha Jae Bok)               기술용어해설 후원
"본 웹사이트 내 모든 저작물은 원출처를 밝히는 한 자유롭게 사용(상업화포함) 가능합니다"