CODEDRAGON ㆍDevelopment/Java
상속(Inheritance)
· 객체의 특성을 그대로 물려받는 또 다른 객체를 만드는 것을 얘기합니다.
· 특정 클래스(super class)가 가지는 일부 속성과 기능을 다른 새로운 클래스(sub class)에게 제공하기 위해 맺는 클래스들간의 관계입니다.
· 멤버변수, 멤버메소드는 상속되지만 생성자는 상속이 안됩니다.
· 상속을 통해 클래스들을 계층적으로 구성할 수 있는 방법을 제공해 줍니다.
· 상속받은 자식 클래스는 상속을 해준 부모 클래스의 모든 기능을 그대로 사용하거나 자식 클래스는 필요한 기능만을 정의하거나 기존의 기능을 변경할 수 있습니다.
상속의 목적
상속을 통해 연관된 일련의 클래스에 대한 '공통적인 규약을 정의하고 적용하는 것'이 상속의 실질적인 목적입니다.
클래스의 상속(Inheritance)
· 사전적 의미와 비슷하게 적용되며 한쪽이 다른 한쪽으로 자신의 속성과 메서드 등을 물려주어 사용할 수 있도록 하는 것입니다.
· 부모 클래스의 모든 속성(데이터, 메소드)를 자식 클래스로 물려줍니다.
· 클래스의 공통된 속성을 부모 클래스에 정의하고 하위 클래스에서는 특화된 메소드와 데이터를 정의합니다.
· 실 세계에서는 다중 상속이 가능하지만 JAVA는 클래스들간의 다중 상속을 지원하지 않으며 이를 통해 객체의 명확성을 높였습니다. (자바는 단일 상속만 지원)
· C#는 파생클래스가 단 하나의 베이스 클래스로부터 상속되어져야 합니다. 즉, 하나의 파생클래스는 2개 이상의 베이스 클래스를 가질 수 없습니다. (단일 상속)
상속관계 용어 정리 (동일 용어)
구분 |
동일용어 |
· 상속을하기 위해 준비된 특정 클래스 · 물려 주는 클래스 · 상속을 해주는 쪽 |
· Base Class(기본 클래스, 기초클래스, 기반클래스) · Super Class(상위클래스, 슈퍼 클래스) · Parent Class(부모 클래스) |
· 특정 클래스로부터 상속을 받아 새롭게 정의되는 클래스 · 물려 받는 클래스 · 상속을 받는 쪽 |
· Derivation Class(유도 클래스, 파생클래스) · Sub Class(하위 클래스) · Child Class(자식 클래스) |
'Development > Java' 카테고리의 다른 글
Hadoop - install for windows (설치 및 설정하기) (0) | 2019.11.10 |
---|---|
오버라이딩(Overriding) vs 오버로딩(Overloading) (0) | 2019.11.07 |
1차원 배열 vs 2차원 배열 (0) | 2019.11.05 |
Step by Step - CSM Bayesian Networks (0) | 2019.11.04 |
WEKA(웨카) 설치하기 - install - 3.8.3 (0) | 2019.11.03 |