본문 바로가기

상속

[개체지향 프로그래밍] 상속 상속 상속(inheritance) 거의 모든 사람이 OOP의 핵심이라 여기는 특성 초창기 OO에서 가장 중요한 특성이라 여김 현재에도 상속을 지원하지 않으면 OO 언어라고 안 보는 게 보통 OOP의 또 다른 매우 중요한 특성인 다형성의 기반 OOP에서의 상속이란? 이미 존재하는 클래스를 기반으로 새 클래스를 만드는 방법 새 클래스는 기존 클래스의 동작과 상태를 그대로 물려 받음(유전) 그 외에 새 클래스만의 동작과 상태를 추가 가능(진화) 물론 이 새 클래스를 상속해서 또 다른 클래스를 만들 수 있음 이미 존재하는 클래스를 부르는 이름 부모(parent) 클래스 기반(base) 클래스 새 클래스를 부르는 이름 자식(child) 클래스 파생(derived) 클래스 두 클래스 간의 상속 관게를 설명하는 표현.. 더보기
[윤성우의 열혈 파이썬 중급편] 24. 상속 24. 상속 부모 클래스가 갖는 모든 메소드가 자식 클래스에도 담긴다 자식 클래스에는 별도의 메소드를 추가할 수 있다 class Father: def run(self): print("so fast!!!") class Son(Father): def jump(self): print("so high!!!") def main(): s = Son() s.run() s.jump() main() 다중 상속 class Father: def run(self): print("so fast!!!") class Mother: def dive(self): print("so deep!!!") class Son(Father, Mother): def jump(self): print("so high!!!") def main(): s .. 더보기
[Effective Python 복습] Chapter 3. 클래스와 상속 파이썬 코딩의 기술 Chapter3. 클래스와 상속 22. 딕셔너리와 튜플보다는 헬퍼 클래스로 관리하자 다른 딕셔너리나 긴 튜플을 값으로 담은 딕셔너리를 생성하지 말자 정식 클래스의 유연성이 필요 없다면 가변운 불변 데이터 컨테이너에는 namedtuple을 사용하자 내부 상태를 관리하는 딕셔너리가 복잡해지면 여러 헬퍼 클래스를 사용하는 방식으로 관리 코드를 바꾸자 class WieghtedGradebook(object): def __init__(self): self._grades = {} def add_student(self, name): self._grades[name] = {} def report_grade(self, name, subject, score, weight): by_subject = se.. 더보기