객체 : 실생활에서 일종의 물건 속성와 행동을 가짐
OOP는 이러한 객체 개념을 프로그램으로 표현
클래스(붕어빵 틀) 인스턴스(붕어빵)
class명 함수명
class SoccerPlayer(object) :
def __init__(self, name, position, back_number) :
self.name = name
self.position = position
self.back_number = back_number
class Person(object):
def __init__(self, name, age):
self.name = name
self.age = age
class Korean(Person):
pass
first_korean = Korean("Lim", 35)
class Employee(Person):
def __init__(self, name, age, gender, salary):
super().__init__(name, age, gender)
self,salary = salary
def do_work(self) # 새 메서드 추가
print("일 파이팅)
class Product(object):
pass
class Inventory(object):
def __init__(self):
self.__items = [] #Private 변수로 선언 타객체가 접근 못함
def add_new_item(self, product):
if type(product)==Product:
self.__items.append(product)
print("new itme add")
else:
raise ValueError("Invaild Item")
def get_number_of_item(self):
return len(self.__items)
#__item으로는 접근 못하고 새로운 변수명 items로 접근 가능하도록 해준다
@property
def items(self):
return self.__items
# 함수를 변수로 사용
def square(x):
return x*x
f = square
f(5)