Inheritance   상속성

(2020-08-08)

상속

Top > [기술공통]
[기초과학]
[진동/파동]
[전기전자공학]
[방송/멀티미디어/정보이론]
[통신/네트워킹]
[정보기술(IT)]
[공학일반(기계,재료등)]
[표준/계측/품질]
[기술경영]
정보기술(IT) >   1. 정보기술
[전산기초]
[컴퓨터구조]
[프로그래밍]
[데이터베이스]
[소프트웨어 공학]
[운영체제]
[정보보호/보안]
[IT 기타기술]
프로그래밍 >   1. 프로그램, 프로그래밍
[프로그래밍 언어론]
[프로그래밍 방법론]
[객체지향 프로그래밍]
[자료표현코드]
[자료구조]
[알고리즘]
[시스템 소프트웨어]
[프로그래밍언어 종류]
[프로그래밍 기타일반]
객체지향 프로그래밍 >   1. 객체지향
  2. 객체지향 프로그래밍
  3. 메세지
  4. 생성자
  5. 접근 제한 수식자
  6. 추상 클래스
  7. 인터페이스
[객체,클래스,인스턴스]
[객체지향 원리/특징]
[다형태성]
[객체지향 모델링]
객체지향 원리/특징   1. 캡슐화
  2. 상속성
  3. 다형성
  4. (동적)바인딩
  5. 정보은닉

Top > [기술공통]
[기초과학]
[진동/파동]
[전기전자공학]
[방송/멀티미디어/정보이론]
[통신/네트워킹]
[정보기술(IT)]
[공학일반(기계,재료등)]
[표준/계측/품질]
[기술경영]
정보기술(IT) >   1. 정보기술
[전산기초]
[컴퓨터구조]
[프로그래밍]
[데이터베이스]
[소프트웨어 공학]
[운영체제]
[정보보호/보안]
[IT 기타기술]
프로그래밍 >   1. 프로그램, 프로그래밍
[프로그래밍 언어론]
[프로그래밍 방법론]
[객체지향 프로그래밍]
[자료표현코드]
[자료구조]
[알고리즘]
[시스템 소프트웨어]
[프로그래밍언어 종류]
[프로그래밍 기타일반]
프로그래밍언어 종류 >   1. 프로그래밍 언어
[C]
[C++]
[자바(Java)]
[자바스크립트]
[PHP]
[파이썬]
[(기타 언어)]
C++   1. C++ 언어
  2. C++ 자료형
  3. 네임스페이스
  4. 상속성
  5. 템플릿

1. [객체지향]  상속성 (Inheritance)

  ㅇ 상위/부모 클래스의 특성을 하위/자식이 상속(이어) 받아서,
     - 기존에 정의된 특성(프로퍼티,메소드)을 재사용하고,
     - 이에 추가/확장/개선 하는 것


2. [객체지향]  상속의 잇점코드의 `재사용` 
  ㅇ 기능의 `추가/확장/개선/재정의 등`
  ㅇ 클래스 간에 `계층적인 관계짓기`
  ㅇ 중복 코드를 없애 `유지보수성`이 좋아짐


3. [객체지향]  클래스의 상속 (Class Inheritance)

  ㅇ 상속하는 원본 클래스
     - 명칭 : 기초 클래스, 기본 클래스, 상위 클래스, 슈퍼 클래스, 부모 클래스 (Base Class,
              Super Class, Parent Class) 라고 함

  ㅇ 상속 받는 하위 클래스 
     - 명칭 : 유도 클래스, 파생 클래스, 서브 클래스, 자식 클래스 (Derived Class, Sub Class, 
              Child Class) 라고 함

  ㅇ 사용 문법 例) 
     - (Java) class 자식클래스명 extends 부모클래스명 { }
     - (C++)  class 자식클래스명 : 접든제어지시자 부모클래스명 { }

  ※ 상속시 다음 사항들이 일어남
     - 자식클래스의 인스턴스 생성시, 부모클래스의 생성자가 호출됨
     - 자식클래스는 부모클래스의 멤버에 접근이 가능
     - 자식클래스의 인스턴트를 통해 부모클래스의 메서드를 호출 가능

  ※ 결국, 자식클래스는, 부모클래스로부터,
     - 상속 받은 프로퍼티메소드를 사용 가능하고,
     - 메소드,속성을 수정하거나 새롭게 추가할 수 있음


4. [객체지향]  상속의 구분

  ㅇ 단일 상속 (Single Inheritance)
     - 오직 하나의 클래스 만을 상위 클래스로 할 수 있음
        . 단일 상속의 그래프 형태는 트리(Tree) 구조로 표현됨

  ㅇ 다중 상속 (Multiple Inheritance)
     - 하나의 클래스가 여러 개의 클래스를 상위 클래스로 할 수 있는 상속구조임
        . 클래스 래티스(Class Lattice)라고도 함

  ※ 한편, 
     - C++은, 다중 상속을 지원하나
     - Java는, 지원하고 있지 않음
        . 대신, 자바에서는 인터페이스 클래스를 제공 


5. [객체지향]  다형태성

  ※ ☞ 다형태성 참조
     - Override (연산의 재정의), Overload (연산다중정의)


[객체지향 원리/특징] 1. 캡슐화 2. 상속성 3. 다형성 4. (동적)바인딩 5. 정보은닉
  1.   기술공통
  2.   기초과학
  3.   진동/파동
  4.   전기전자공학
  5.   방송/멀티미디어/정보이론
  6.   통신/네트워킹
  7.   정보기술(IT)
        1. 정보기술
    1.   전산기초
    2.   컴퓨터구조
    3.   프로그래밍
          1. 프로그램, 프로그래밍
      1.   프로그래밍 언어론
      2.   프로그래밍 방법론
      3.   객체지향 프로그래밍
            1. 객체지향
            2. 객체지향 프로그래밍
            3. 메세지
            4. 생성자
            5. 접근 제한 수식자
            6. 추상 클래스
            7. 인터페이스
        1.   객체,클래스,인스턴스
        2.   객체지향 원리/특징
          1.   1. 캡슐화
              2. 상속성
              3. 다형성
              4. (동적)바인딩
              5. 정보은닉
        3.   다형태성
        4.   객체지향 모델링
      4.   자료표현코드
      5.   자료구조
      6.   알고리즘
      7.   시스템 소프트웨어
      8.   프로그래밍언어 종류
      9.   프로그래밍 기타일반
    4.   데이터베이스
    5.   소프트웨어 공학
    6.   운영체제
    7.   정보보호/보안
    8.   IT 기타기술
  8.   공학일반(기계,재료등)
  9.   표준/계측/품질
  10.   기술경영

 
        최근수정     요약목록     참고문헌