카테고리 없음

상속의 정의 및 구현

Crecok 2023. 3. 16. 17:45
반응형

상속은 객체지향의 4개 개념인 A P.I.E 중 I (Inheritance) 에 해당한다.

▶ A P.I.E : 추상화(Abstraction), 다형성(Polymorphism), 상속(Inheritance), 캡슐화(Encapsulation)

 

 자바 프로그래밍에서의 상속

기존 클래스의 멤버 변수 및 메서드를 다른 클래스에서 재사용 할 수 있게 받아서 쓰는 것.

상속을 활용하면 코드의 절감 효과를 가져올 수 있고, 유지보수성이 향상된다.

 

부모 클래스 ( 조상 클래스, 상위 클래스, 슈퍼 클래스, 공통 클래스 등으로 부른다. )

상속의 관계에 있어 물려주는 쪽의 클래스

 

자식 클래스 ( 자손 클래스, 하위 클래스, 서브 클래스 등으로 부른다. )

상속의 관계에 있어 부모 클래스의 멤버 변수 및 메서드를 받는 쪽의 클래스

 

UML로 상속의 관계를 표현할 땐 실선의 화살표를 이용한다.

UML (Unified Modeling Language) : 통합 모델링 언어

단, 화살표 방향이 '자식 → 부모'쪽으로 향해있음을 주의.

영문 표현이므로 부모가 자식에게 물려주는 방향이 아닌 자식이 부모에게 물려 받는다는 시각으로 바라본다.

 

상속의 관계 : 'is ~ a' 관계

- 자식 is a 부모 ( 자식이 부모의 모든 멤버를 가지고 있기 때문에 문법이 성립 )

 

 상속 프로그램 코드

class 자식클래스명 extends 부모클래스명 {
}

- '자식 → 부모'순으로 표기함에 주의한다. ( 화살표 방향 주의 )

 

 단일 상속

여러개의 자식 클래스가 하나의 부모 클래스의 멤버를 상속받을 수 있다.

 

다중 상속 (X)

하나의 자식 클래스가 여러개의 부모 클래스로부터 멤버를 상속받는 행위. Java에서는 사용하지 않는다.

 

 

반응형