Python 상속
클래스의 상속: 한 클래스가 다른 클래스로부터 데이터 속성과 메소드를 물려받는 것
상속하는 클래스를 기반(base) 클래스 또는 상위(super) 클래스라고 하고
상속받는 클래스를 파생(derived)클래스 또는 하위(sub) 클래스라고 한다.
예)
class a:
def method1(self, var1, var2):
return result
class b(a):
def method2(self, var1, var2):
return result
===
class b:
def method1(self, var1, var2):
return result
def method2(self, var1, var2):
return result
상위 클래스의 기능을 불러오는 방법: super()
예)
class add1:
def addition1(self, x, y):
print(x+y)
class add2(add1):
def addition2(self, x, y):
super().addition1(x, y)
상위 클래스의 이름과 같은 메소드를 하위 클래스에 정의하는 방법
class a:
def method(self, var):
result1
class b(a):
def method(self, var):
different result1
=> a의 메소드는 무시되고 b는 새롭게 정의된 메소드를 사용한다.
* 다중상속(여러 개를 상속)받는 경우, 먼저 입력한 클래스를 상속받는다.