[파이썬] 클래스 상속과 다중 상속

클래스 상속은 객체 지향 프로그래밍에서 가장 중요한 개념 중 하나입니다. 클래스 상속은 기존 클래스를 상속하여 새로운 클래스를 만들면서 기존 클래스의 기능을 확장하거나 수정하는 데 사용됩니다. 다중 상속은 하나의 클래스가 여러 개의 클래스를 상속하는 것을 말합니다.

클래스 상속

클래스 상속은 기존 클래스를 상속하여 새로운 클래스를 만드는 것입니다. 기존 클래스를 부모 클래스라고 하고, 새로 만들어진 클래스를 자식 클래스라고 합니다. 자식 클래스는 부모 클래스의 모든 기능을 가지고 있습니다.

클래스 상속의 장점

클래스 상속의 예

다음은 클래스 상속의 예입니다.

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

class Child(Parent):
    def __init__(self, name, age):
        super().__init__(name)
        self.age = age

c = Child("John", 10)
print(c.name) # John
print(c.age) # 10

위 예제에서 Child 클래스는 Parent 클래스를 상속합니다. Child 클래스는 Parent 클래스의 __init__ 메소드를 오버라이딩하여 nameage 변수를 초기화합니다.

다중 상속

다중 상속은 하나의 클래스가 여러 개의 클래스를 상속하는 것을 말합니다. 다중 상속은 부모 클래스들의 기능을 모두 가져오기 때문에 코드 재사용이 가능합니다.

다중 상속의 예

다음은 다중 상속의 예입니다.

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

class Parent2:
    def __init__(self, age):
        self.age = age

class Child(Parent1, Parent2):
    def __init__(self, name, age):
        Parent1.__init__(self, name)
        Parent2.__init__(self, age)

c = Child("John", 10)
print(c.name) # John
print(c.age) # 10

위 예제에서 Child 클래스는 Parent1Parent2 클래스를 다중 상속합니다. Child 클래스는 Parent1Parent2 클래스의 모든 기능을 가지고 있습니다.