: 클래스 B의 객체 -> 클래스 A의 메쏘드 매개변수
=> 메쏘드(def) 내에서만 사용
class A:
...
def do_something(self, b):
...
: 클래스 B의 객체 -> 클래스 A의 속성값
=> 초기 생성자 attribute 값은 None -> setter에서
class A:
def __init(self, ...):
self.__attr_b = None #처음에는 속성값을 None으로
@attr_b.setter #위의 클래스B로 가지고온 속성값을 setter로
def art_b(self, b):
self.__attr_b = b #매개변수 b는 B의 객체 -> 클래스 A의 attribute가 된다
: 클래스 B의 객체 -> 클래스 A의 속성값으로 생성 및 저장
=> 생성자 단계에서 부터
class A:
def __init__(self, ...):
self.__attr_b = B() #생성자에서 클래스B의 attribute를 갖는다.
: 클래스A를 기본 클래스로 지정하여 클래스 B를 정의
class A:
...
class B(A):
...