가이드라인

클래스의 속성과 메서드를 물려받는 상속

상속(Inheritance)은 한 클래스가 다른 클래스의 속성과 메서드를 물려받는 기능을 말합니다.

이를 통해 기존 코드를 재사용하고 확장하여 프로그래밍의 효율성을 높일 수 있습니다.

파이썬에서는 클래스를 정의할 때, 괄호 안에 상속받을 클래스를 넣어 상속을 구현합니다.

상속 구조
class 자식클래스(부모클래스): # 자식 클래스의 내용

위 코드에서 자식클래스부모클래스를 상속받습니다.

자식클래스부모클래스의 속성과 메서드를 사용할 수 있습니다.

부모클래스상위 클래스(Superclass) 또는 기본 클래스(Base class)라고도 불립니다.

자식클래스하위 클래스(Subclass) 또는 파생 클래스(Derived class)라고도 불립니다.


상속은 왜 사용할까요?

객체 지향 프로그래밍에서 상속은 다음과 같은 역할을 합니다.

  • 코드 재사용: 기존 클래스의 코드를 그대로 활용하여 중복을 줄일 수 있습니다.

  • 확장성: 기존 클래스를 수정하지 않고도 새로운 기능을 추가하거나 기존 기능을 변경할 수 있습니다.

  • 계층적 구조: 클래스 간의 계층을 형성해 프로그램 구조를 더 명확하게 만듭니다.

아래는 Animal 클래스를 상속받아 Dog 클래스를 정의하는 예시입니다.

상속 사용 예시
class Animal: def __init__(self, name): self.name = name def speak(self): return "소리를 냅니다." class Dog(Animal): def speak(self): return f"{self.name}가 멍멍하고 짖습니다." # 클래스 사용 예시 my_dog = Dog("바둑이") print(my_dog.speak()) # '바둑이가 멍멍하고 짖습니다.' 출력

이 예제에서 Dog 클래스는 Animal 클래스로부터 상속받아 name 속성과 speak 메서드를 활용합니다.

그리고 speak 메서드를 재정의(오버라이딩)하여 강아지의 특성을 표현합니다.

Mission
0 / 1

빈칸에 들어갈 가장 적절한 단어는 무엇일까요?

객체 지향 프로그래밍에서 상속은 코드의 을 높입니다.
속도
메모리 사용량
재사용성
정합성

가이드라인

AI 튜터

배포

디자인

업로드

수업 노트

즐겨찾기

도움말

코드 에디터

코드 실행
코드 생성

실행 결과