C# :: For Beginners

[C#] [OOP] 상속 (inheritance) 이란?

이번 포스트에서는 상속에 관해 간단히 정리해 봅니다.

상속(inheritance)이란?

상속(inheritance)이란, 클래스를 정의할 때 기존 클래스가 가지고 있는 것들-필드들, 메소드들 등-을 물려받는 것을 말합니다. 상속받는 클래스는 이미 구현된 것들을 기존 클래스로부터 물려받고 이들은 재사용됩니다. 소프트웨어 재사용 (software reuse) 라는 개념은 여기에서 적용됩니다. 상속받는 클래스는 그 외에 자신만의 필드들과 메소드들이 추가됩니다. 이는 상속으로부터 클래스의 특성이 확장됨을 뜻합니다.

상속 관련 용어들

클래스 C1이 있고, 이를 상속받는 클래스 C2를 구현했다고 가정해 봅시다. 이 때 C1을 부모 클래스 (parent class)기반 클래스 (base class) 또는 상위 클래스 (super class) 라고 부릅니다. 그리고 C2는 자식 클래스 (child class)파생 클래스 (derived class)하위 클래스 (subclass) 라고 합니다.

상속의 장점

앞에서 소프트웨어 재사용을 살짝 언급했습니다 .이것이 바로 상속의 장점입니다. 소프트웨어를 개발할 때에는 이를 구성하는 모듈들을 처음부터 새로 만들기도 합니다. 하지만, 기존의 것으로부터 확장하는 방식으로 개발되기도 합니다. 만약 이미 존재하는 클래스의 특징을 갖는 다른 클래스들을 만들려면, 상속을 적용하는 것이 좋습니다. 특히 메소드들의 경우 이미 검증을 받은 것들은 (그것들을 수정하지 않는다는 전제 조건 하에) 또 받을 필요가 없습니다. 이는 개발 시간과 검증 시간을 줄이는데 도움이 됩니다.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: