클래서 상속 - Tirrilee/TechTalk GitHub Wiki
상속
- 코드 중복을 최소화하기 위한 목적으로 사용된다.
- 클래스 간에 상속관계에 놓이게 되면, 부모/자식 관계가 성립한다.
- 자식 클래스는 부모 클래스의 모든 내역을 물려받는다.
- Python은 다중상속을 지원한다 ->
직계 부모가 다수
예시
class Programer:
def __init__(self, name):
self.name = name
def run(self):
print('뜁니다.')
def eat(self, food):
print('{}을 먹습니다.'.format(food))
def sleep(self):
print('잠을 잡니다.')
def coding(self):
print('열심히 코딩을 합니다.')
class Desginer:
def __init__(self, name):
self.name = name
def run(self):
print('뜁니다.')
def eat(self, food):
print('{}을 먹습니다.'.format(food))
def sleep(self):
print('잠을 잡니다.')
def design(self):
print('열심히 디자인을 합니다.')
위 두개의 클래스 같은 경우 중복되는 부분을 Person이라는 새로운 클래스로 코드 중복을 줄일 수 있다.
# 부모 클래스
class Person(object):
def __init__(self, name):
self.name = name
def run(self):
print('뜁니다.')
def eat(self, food):
print('{}을 먹습니다.'.format(food))
def sleep(self):
print('잠을 잡니다.')
# 자식 클래스
class Programmer(Person):
def coding(self):
print('열심히 코딩을 합니다')
class Designer(Person):
def design(self):
print('열심히 디자인을 합니다')