728x90
-
클래스 정의 및 객체 생성
-
생성자 : 객체가 생성될 때 자동으로 호출되는 메소드
# 클래스 정의
class Calculator:
def __init__(self): # 생성자 '_' 앞 뒤로 2개 씩
self.result = 0
def add(self,num): # 메소드
self.result += num
return self.result
cal1 = Calculator() # 객체 생성
print(cal1.add(3))
-
클래스로 사직연산 만들기
class Calculator:
def __init__(self):
self.result = 0
def add(self,num):
self.result += num
return self.result
def sub(self,num):
self.result -= num
return self.result
def mul(self,num):
self.result *= num
return self.result
def div(self,num):
self.result /= num
return self.result
cal1 = Calculator()
print(cal1.add(3))
print(cal1.sub(1))
print(cal1.mul(4))
print(cal1.div(2))
실행결과 :
3
2
8
4.0
-
클래스의 상속 : 부모 클래스의 내용(속성과 메소드)을 자식 클래스가 가지게 되는 것입니다.
class Calculator:
def __init__(self):
self.result = 0
def add(self,num):
self.result += num
print("Calculator's add")
return self.result
class MoreCalculator(Calculator):
def pow(self,num):
self.result = num ** 2
return self.result
cal1 = Calculator()
print(cal1.add(3))
mcal1 = MoreCalculator()
print(mcal1.pow(4))
print(mcal1.add(3))
실행결과 :
Calculator's add
3
16
Calculator's add
19
-
메소드 오버라이딩 : 부모 클래스에 있는 메소드와 같은 이름으로 만드는 것
class Calculator:
def __init__(self):
self.result = 0
def add(self,num):
self.result += num
print("Calculator's add")
return self.result
class MoreCalculator(Calculator):
def pow(self,num):
self.result = num ** 2
return self.result
def add(self,num): # 메소드 오버라이딩
self.result += num
print("MoreCalculator's add")
return self.result
cal1 = Calculator()
print(cal1.add(3))
print(cal1.sub(1))
print(cal1.mul(4))
print(cal1.div(2))
mcal1 = MoreCalculator()
print(mcal1.pow(4))
print(mcal1.add(3))
실행결과 :
Calculator's add
3
16
MoreCalculator's add
19
728x90
'Programming > Python' 카테고리의 다른 글
Python 예외 처리하기 (0) | 2020.01.10 |
---|---|
Python 모듈 사용하기(random, datetime, time) (0) | 2020.01.10 |
Python 터틀 그래픽 사용하기 (0) | 2020.01.09 |
Python 파일 입출력하기 (0) | 2020.01.09 |
Python 함수 사용하기 (0) | 2020.01.08 |