[python] 부모 클래스와 자식 클래스 간의 데이터 공유

이번에는 파이썬에서 부모 클래스와 자식 클래스 간에 데이터를 공유하는 방법에 대해 알아보겠습니다.

부모 클래스의 데이터 상속

부모 클래스의 데이터는 super() 메소드를 사용하여 자식 클래스로 상속될 수 있습니다.

다음은 부모 클래스의 __init__ 메소드에서 정의된 데이터를 자식 클래스로 상속하는 예시입니다:

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

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

위의 예시에서 Child 클래스는 Parent 클래스의 name 속성을 상속받고, age 속성을 추가로 정의합니다.

클래스 변수 공유

파이썬은 클래스 변수의 공유를 지원합니다. 클래스 변수는 모든 클래스 인스턴스에서 동일한 값을 공유합니다.

class Parent:
    family = "Smith"

class Child(Parent):
    pass

위의 예시에서 Child 인스턴스는 family 변수를 접근하여 값을 가져올 수 있습니다.

인스턴스 메소드 공유

또한, 자식 클래스에서 부모 클래스의 메소드를 오버라이드할 수 있으며, 이를 통해 부모 클래스의 메소드를 공유할 수 있습니다.

class Parent:
    def say_hello(self):
        print("Hello from Parent")

class Child(Parent):
    def say_hello(self):
        super().say_hello()
        print("Hello from Child")

위의 예시에서 Child 클래스는 Parent 클래스의 say_hello 메소드를 오버라이드하고, super().say_hello()를 사용하여 부모 클래스의 메소드를 호출합니다.

이렇게 함으로써, 부모 클래스와 자식 클래스 간에 데이터를 공유하고 관리할 수 있습니다.

더 자세한 내용을 알아보려면 Python 공식 문서를 참고해보세요.