FIF's 코딩팩토리

패스트캠퍼스 챌린지 27일차 본문

패스트캠퍼스 챌린지

패스트캠퍼스 챌린지 27일차

FIF 2022. 2. 19. 18:41
반응형

객체간의 상속은 어떤 의미일까?

 

상속(inheritance)이란 기존의 클래스에 기능을 추가하거나 재정의하여 새로운 클래스를 정의하는 것을 의미한다.

이러한 상속은 캡슐화, 추상화와 더불어 객체 지향 프로그래밍을 구성하는 중요한 특징 중 하나이다.

 

상속을 이용하면 기존에 정의되어 있는 클래스의 모든 필드와 메소드를 물려받아, 새로운 클래스를 생성할 수 있다.

이때 기존에 정의되어 있던 클래스를 부모 클래스(parent class) 또는 상위 클래스(super class), 기초 클래스(base class)라고도한다.

그리고 상속을 통해 새롭게 작성되는 클래스를 자식 클래스(child class) 또는 하위 클래스(sub class), 파생 클래스(derived class)라고도 한다.

 

 

상속의 장점은 무엇일까?

자바에서 클래스의 상속은 다음과 같은 장점을 가진다.

 

1. 기존에 작성된 클래스를 재활용할 수 있다.

2. 자식 클래스 설계 시 중복되는 멤버를 미리 부모 클래스에 작성해 놓으면, 자식 클래스에서는 해당 멤버를 작성하지 않아도 된다.

3. 클래스 간의 계층적 관계를 구성함으로써 다형성의 문법적 토대를 마련한다.

 

자식 클래스

자식 클래스(child class)란 부모 클래스의 모든 특성을 물려받아 새롭게 작성된 클래스를 의미한다.

 

자바에서 자식 클래스는 다음과 같은 문법을 통해 선언한다.

class 자식클래스이름 extend 부모클래스이름 { ... }

 

다음 그림은 부모 클래스와 자식 클래스 간의 포함 관계를 나타낸 그림이다.

이처럼 부모 클래스는 자식 클래스에 포함된 것으로 볼 수 있다.

따라서 부모 클래스에 새로운 필드를 하나 추가하면, 자식 클래스에도 자동으로 해당 필드가 추가된 것처럼 동작한다.

 

자식 클래스에는 부모 클래스의 필드와 메소드만이 상속되며, 생성자와 초기화 블록은 상속되지 않는다.

또한, 부모 클래스의 접근 제어가 private이나 default로 설정된 멤버는 자식 클래스에서 상속받지만 접근할 수는 없다.

 

 

 

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.

https://bit.ly/37BpXiC

 

패스트캠퍼스 [직장인 실무교육]

프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.

fastcampus.co.kr



 

 

반응형
Comments