티스토리 뷰
반응형
클래스를 다루다 보면 상속을 받다라는 용어도 같이 나오게 된다. 여기서 상속(Inheritance)이란 "물려받다" 라는 뜻으로, 우리가 흔히 말하는 재산을 상속받는다 할때의 상속과 같은 의미라고 생각하면 된다. 클래스에도 이 상속의 개념을 적용할 수 있다. 어떤 클래스를 만들때 다른 클래스의 기능을 그대로 물려 받는 것을 말한다. 그러면 이번 시간에는 지난 사직연산클래스 에서 ab (a의 b제곱)을 구할 수 있는 기능을 추가해 보도록 하자.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | class FourCal: def setdata(self, first, second): self.first = first self.second = second def add(self): result = self.first + self.second return result def mul(self): result = self.first * self.second return result def sub(self): result = self.first - self.second return result def div(self): result = self.first / self.second return result | cs |
클래스 상속
우리는 지난 시간에 사칙연산클래스 를 만들어 놓았기 때문에 오늘 추가하는 moreFourCal()은 아래와 같이 간단하게만들수 있다.
1 2 3 4 | >>> class MoreFourCal(FourCal): ... pass ... >>> | cs |
클래스를 상속하기 위해서는 아래와 같이 클래스 이름 뒤 괄호 안에 상속할 클래스의 이름을 넣어주면 된다.
1 | class 클래스 이름(상속할 클래스 이름) | cs |
MoreFourCal 는 fourcal클래스르 상속했으므로 fourcal 클래스의 모든 기능을 사용할수 있어야 한다.
1 2 3 4 5 6 7 8 9 | >>> class MoreFourCal(FourCal): ... def pow(self): ... result = self.first ** self.second ... return result ... >>> >>> a = MoreFourCal(4, 2) >>> a.pow() 16 | cs |
제 포스팅이 도움이 되셨다면
↓♡공감↓ 꾸~욱 부탁드려요^^
더 나은 포스팅에 큰 힘이 됩니다.
반응형
댓글