Q: 다음 두 개의 자식 클래스의 차이는 무엇인가?
A:
1. 가장 큰 차이는 부모 클래스를 참조할 때 __init__ 에서 super의 사용 유무이다.
2. ChildA는 super를 사용하지 않고 있는데, 이 경우 Base 클래스를 다른 것으로 바꾸어야 하는 경우 쓸 수 없으며 Base를 사용하는 다른 메쏘드 들도 바꾸고, __init__ 내의 Base도 바꿔야 한다.
3. 반면에 ChildB는 부모 클래스만 한 번 바꿔주면 된다.
4. 결국 super의 사용이 부모를 직접 참조하는 코드의 유지보수를 쉽게 한다.
댓글 영역