[python] 클래스 상속

Python에서 클래스 상속은 한 클래스가 다른 클래스의 속성과 메서드를 상속받는 것을 말합니다. 이를 통해 코드의 재사용성을 높일 수 있고, 계층 구조를 통해 코드를 구성할 수 있습니다.

기본 클래스 상속

아래는 Animal 클래스를 만들고, 이를 상속받아 Dog 클래스를 생성하는 예제입니다.

class Animal:
    def speak(self):
        print("음성을 내다")

class Dog(Animal):
    def bark(self):
        print("멍멍!")

위 예제에서 Dog 클래스는 Animal 클래스를 상속받습니다. 이제 Dog 클래스는 Animal 클래스의 speak 메서드를 사용할 수 있습니다.

메서드 오버라이딩

메서드 오버라이딩은 부모 클래스의 메서드를 자식 클래스에서 재정의하는 것을 의미합니다. 아래는 Animal 클래스를 상속받아 Cat 클래스를 만들고, speak 메서드를 오버라이딩하는 예제입니다.

class Cat(Animal):
    def speak(self):
        print("야옹~")

위 예제에서 Cat 클래스는 Animal 클래스의 speak 메서드를 재정의하여 독자적인 기능을 가지고 있습니다.

다중 상속

Python은 다중 상속을 지원합니다. 다중 상속은 한 클래스가 두 개 이상의 클래스로부터 상속받는 것을 의미합니다.

class A:
    def method_a(self):
        print("메서드 A")

class B:
    def method_b(self):
        print("메서드 B")

class C(A, B):
    def method_c(self):
        print("메서드 C")

위 예제에서 C 클래스는 AB 클래스로부터 상속받아 method_a, method_b, method_c를 모두 사용할 수 있습니다.

클래스 상속을 사용하여 객체 지향적인 프로그래밍을 구현할 수 있으며, 코드의 재사용성과 유지보수가 용이해집니다.

참고 자료