객체 지향 프로그래밍(Object Oriented Programing)
절차지향 : C
객체지향 : Java C# C++
프로토타입 객체지향 : JavaScript
클래스와 객체
자동차 설계도 <클래스>
설계도 기반으로 만들어진 실제 자동차 <객체>
객체 이전의 프로그램
# %% test 01
fa_age =20 #아빠 나이 정보, 현재 20살
def up_fa_age():# 이 함수를 호출하면 아빠 나이 올라감
global fa_age
fa_age += 1
def get_fa_age(): # 이 함수 호출하면 아빠 나이 반환 함
return fa_age
def main():
print("2022년...")
print("아빠:", get_fa_age())
print("2023년...")
up_fa_age() #아빠 나이 1살 증가
print("아빠:", get_fa_age())
main()
2022년...
아빠: 20
2023년...
아빠: 21
# %% test 01
class AgeInfo: #클래스 AgeInfo의 정의
def up_age(self): #클래스 안에 담긴 up_age 함수
self.age += 1
def get_age(self): #클래스 안에 담긴 get_age 함수
return self.age
def main():
fa=AgeInfo() #AgeInfo 객체 생성
fa.age=20 #fa에 저장된 객체의 변수 age를 20에 저장
print("현재 아빠 나이...")
print("아빠:", fa.get_age()) #get_age 호출할 때 self에 값 전달하지 않음
print("1년뒤")
fa.up_age() #up_age 호출 할 때 self에 값 전달 하지 않음
print("아빠:", fa.get_age()) #get_age 호출 할 때 self에 값 전달 하지 않음
main()
현재 아빠 나이...
아빠: 20
1년뒤
아빠: 21
728x90
'Dev. > Python' 카테고리의 다른 글
Python :: 생성자 (초기화 메소드) (0) | 2022.07.19 |
---|---|
Python :: 클래스와 객체 (0) | 2022.07.19 |
python :: 전역변수와 지역변수 (0) | 2022.07.14 |
python :: Dictionary 딕셔너리 (0) | 2022.07.12 |
python :: 모듈 (0) | 2022.07.05 |
댓글