[python] 클래스의 상속 계층 구조

파이썬은 객체 지향 프로그래밍을 지원하며, 클래스 상속을 사용하여 코드의 재사용성을 높일 수 있습니다. 클래스를 정의 할 때, 다른 클래스에서 정의한 속성과 메서드를 상속받아 새로운 클래스를 만들 수 있습니다. 이는 상속 계층 구조를 형성하게 됩니다.

기본 클래스 생성

가장 기본이 되는 클래스를 만듭니다. 여기에는 공통적인 특징과 동작이 포함됩니다.

class Animal:
    def __init__(self, name):
        self.name = name

    def speak(self):
        pass

위 코드에서는 Animal 클래스를 정의하고, __init__ 메서드를 사용하여 인스턴스 변수 name을 초기화하고, speak 메서드를 정의합니다.

하위 클래스 생성

이제 Animal 클래스를 상속받는 하위 클래스를 만들어 봅시다.

class Dog(Animal):
    def speak(self):
        return "Woof!"

class Cat(Animal):
    def speak(self):
        return "Meow!"

Dog 클래스와 Cat 클래스는 Animal 클래스를 상속받습니다. 각 클래스 내부에는 speak 메서드를 오버라이드하여 각각 개와 고양이의 울음소리를 반환하도록 합니다.

상속 계층 구조

이제 Animal 클래스를 부모 클래스로 갖는 DogCat 클래스의 상속 계층 구조를 살펴봅시다.

Animal
  |
  |___ Dog
  |
  |___ Cat

Animal이 최상위 부모 클래스이며, DogCat 클래스는 각각 Animal 클래스를 상속하고 있습니다. 이러한 상속 계층 구조를 통해 코드를 구조화하고 재사용성을 높일 수 있습니다.

이상으로 파이썬의 클래스 상속과 상속 계층 구조에 대한 내용을 정리해 보았습니다. 더 많은 정보는 파이썬 공식 문서를 참고하시기 바랍니다.