일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 월간
- 30분
- 잡생각
- 3줄정리
- 운동
- 괜찮음
- Problem Solving
- realclass
- 리얼 클래스
- 파비최
- Writing
- English
- 개발자
- 영어원서읽기
- 읽기
- 쓰릴오브파이트
- 영어공부
- 매일
- 사이드
- 뭐든
- 만화도
- 10분
- FIT XR
- 미드시청
- Daily Challenge
- 화상영어
- 링피트
- 프로젝트
- 스탭퍼
- leetcode
Archives
- Today
- Total
파비의 매일매일 공부기록
프로그래머를 위한 파이썬 - 8장 #3 본문
8.3 파이썬의 상속
- 파이썬은 클래스와 그들의 상속 구조를 검사하기 위한 도구와 함께 상속과 조합에 접근하는 여러 방법을 제공.
8.3.1 타입 검사
- 코드를 디버깅할 때 알아야 할 가장 일반적인 사항은 특정 코드 줄에서 처리하는 객체의 타입.
- type()과 isinstance(), issubclass() 함수를 제공
8.3.2 슈퍼클래스 접근
- super() 함수를 사용해서 슈퍼클래스의 속성과 메서드에 접근 가능
- super()를 사용하는 코드는 치환 가능성이 깨지면 큰 혼란을 일으킬 수 있음. 유지보수성이 크게 떨어질 수 있음. 다중 상속에서 특히 중요.
8.3.3 다중 상속과 메서드 결정 순서
- 하나의 서브클래스가 둘 이상의 슈퍼클래스를 가질 때 다중 상속 관계라 함.
- 메서드 결정 순서 : __mro__ 속성을 사용하면 클래스의 메서드 결정 순서를 볼 수 있음.
- 협동적 다중 상속 : 기대한 다중 상속 작업을 수행 가능. 각 클래스는 동일한 메서드 서명(치호나 가능성)을 갖도록 함.
8.3.4 추상 기본 클래스
- 상속처럼 보이는 것을 사용하여 효과적으로 인터페이스 역학을 하도록 하는 방법. 추상 기본 클래스의 인스턴스는 직접 생성 불가. 다른 클래스가 어떻게 동작해야 하는지 템플릿 역할을 수행.
- 추상 기본 클래스는 정의한 메서드를 서브클래스가 최소한으로 구현하도록 강제하지만, 서브클래스가 원하는 인터페이스를 구현하는 동작을 추가하는 것은 가능. 그러나 추상화된 클래스에 실제 동작을 두지 않도록 유의할 것.
반응형
'Study > Python' 카테고리의 다른 글
프로그래머를 위한 파이썬 - 9장 #1 (0) | 2021.12.04 |
---|---|
프로그래머를 위한 파이썬 - 8장 #4 (0) | 2021.12.03 |
프로그래머를 위한 파이썬 - 8장 #2 (0) | 2021.12.01 |
프로그래머를 위한 파이썬 - 8장 #1 (0) | 2021.11.30 |
프로그래머를 위한 파이썬 - 7장 #2 (0) | 2021.11.29 |
Comments