JAMONGPROJECT
[DAY14] 상속과 예외처리 본문
클래스의 계층구조
상속이란?
클래스의 상속이란 한 클래스가 다른 클래스로부터 데이터 속성과 메서드를 물려받는 것.
상속하는 클래스를 기반(base) 클래스 또는 상위(super) 클래스라고 하고
상속 받는 클래스를 파생(derived) 또는 하위(sub) 클래스라고 한다.
파이썬에서 상속 하는법
class A:
def 함수1(self, 변수1, 변수2, ...):
return 결과
class B(A):
def 함수2(self, 변수1, 변수2, ...):
return 결과
=> B는 아래와 같음
class B:
def 함수1(self, 변수1, 변수2, ...):
return 결과
def 함수2(self, 변수1, 변수2, ...):
return 결과
class add_calculator :
def addition (self, x , y):
return x+y
class good_calculator (add_calculator):
def substraction (self, x , y):
return x - y
부모의 기능을 불러오려면?
super() 이용하면 부모에게 정의된 함수를 불러올 수 있다.
class add_calculator:
def addition(self, x, y):
print(x+y)
class good_calculator(add_calculator):
def addition2(self, x, y):
super().addition(x,y) # 부모의 addition 메소드를 불러와서 print(x+y)가 될 것이다.
print('또?')
super().addition(x,y)
overriding
만약에, 부모의 메소드와 이름이 똑같은 메소드를 자식에게 정의하면?
class A:
def method(self, 변수):
결과
class B(A):
def method(self, 변수):
다른 결과
=> A의 메소드는 무시되고 B는 새롭게 정의된 메소드를 사용!
다중 상속
class A:
def 함수(self):
결과
class B:
def 함수(self):
결과
class C(A,B):
pass
위와같은 상황에서 C는 A, B중에 어떤 함수를 상속받을까?
=> 먼저 입력한 A의 함수를 상속받는다.
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.
#패스트캠퍼스 #패캠챌린지 #수강료0원챌린지 #환급챌린지 #직장인인강 #직장인자기계발
#패캠인강후기 #패스트캠퍼스후기 #오공완
#한번에끝내는컴퓨터공학전공필수&인공지능심화초격차패키지Online
'Challenge > FASTCAMPUS 30일 챌린지' 카테고리의 다른 글
[DAY16] 상속과 예외처리 (0) | 2023.03.07 |
---|---|
[DAY15] 상속과 예외처리 (0) | 2023.03.06 |
[DAY13] 클래스 (0) | 2023.03.04 |
[DAY12] 클래스 (0) | 2023.03.03 |
[DAY11] 클래스 (0) | 2023.03.02 |