이번 강의에서는 파이썬 클래스의 상속에 대해 알아보겠습니다. 소프트웨어 개발시에는 예전에 만들어진 코드를 이용하여 새로운 기능을 개발하는 경우가 많은데요, 클래스의 상속 기능을 사용하면 부모 클래스에서 만들어둔 기능과 속성을 물려받을 수 있습니다.
상속은 객체지향 프로그래밍의 매우 뛰어난 기능으로 이 강의에서는 상속에 대해 알아봅니다. 또한 상속받은 자식이 부모 클래스를 호출하기 위해 사용하는 super() 함수에 대해서도 알아봅니다.
- 강의 키노트 자료는 다음 링크를 통해 다운 받으세요
https://drive.google.com/drive/folders/1UrrO4_ch4xcIErbExstwpUVY6vFvPdkW
- 강의 소스코드는 다음 링크를 통해 다운 받으세요
https://github.com/dongupak/Basic-Python-Programmingwjd
1. 널널한 교수의 기초 파이썬
16_1. 상속과 super()
창원대학교 정보통신공학과 박동규
2. 동영상 강의자료와 코드
• 동영상 강의(널널한 교수의 기초 파이썬)
• https://www.youtube.com/watch?
v=TK6RLGaM3Ao&list=PL2P1Vm9k53HOEn-QYXAfblQWkR0OW9mKX
• 소스코드( GitHub )
• https://github.com/dongupak/Basic-Python-Programming
5. 상속
• 우리는 예전에 만들어진 코드를 이용하여 새로운 기능을 개발하는
경우가 많다
• 클래스의 상속 기능을 사용하면 부모 클래스에서 만들어둔 기능과
속성을 물려받을 수 있다
• 상속은 객체지향 프로그래밍의 매우 뛰어난 기능이다
• 새 클래스를 정의할 때 기존의 클래스를 사용한다
6. 상속(inheritance)의 예
Person
firstName, lastName : 속성
name() : 메소드
Empolyer
position : 속성, info() : 메소드
Employee
staffID : 속성, info() : 메소드
Person 클래스는 Employer과 Employee 클래스의 공통적인 속성이 있는데 이를 자식에게
상속하면 자식은 공통적인 부분을 재코딩하지 않아도 된다
부모클래스 : 상속하는 클래스, 슈퍼 클래스, 기본 클래스
자식클래스 : 상속받는 클래스, 서브 클래스, 파생 클래스
자식클래스 자식클래스
부모클래스
고용인 종업원
11. super()
• 부모 클래스의 이름을 알고 있을 경우 Person.__init__ 과 같이 부모 클
래스의 이름과 .을 사용하여 부모클래스의 메소드를 호출 할 수 있다
• 하지만 super() 를 통해 부모 클래스의 메소드를 손쉽게 이용할 수 있
다
• 부모 클래스를 명시적으로 적어줄 필요가 없으므로 프로그램의 유지
보수가 쉽다
Person.__init__()
super().__init__()