클래스, 객체, 속성, 메서드, 생성자, 인스턴스

발자·2023년 6월 14일
0

python

목록 보기
19/19

클래스(Class)

객체의 설계도

객체(Object)

클래스로 생성된 속성을 가지고 식별이 가능한 것

속성(Field)

클래스 안의 변수

메서드(Method)

클래스 안의 함수

생성자(Constructor)

객체 생성 시 자동으로 실행되는 함수

인스턴스(Instance)

메모리에 저장된 객체

# 클래스
class Menu:
		# 생성자	객체, 속성1, 속성2
	def __init__(self, name, price):
    	# 객체 속성 정의
    	self.name = name
        self.price = price
        
    # 메서드
    def show(self):
    	print("{} 메뉴의 가격은 {}원입니다.".format(self.name, self.price))

# 인스턴스 생성
a_pizza = Menu("cheese pizza", 20000)
# a_pizza 인스턴스의 show 메서드 실행
a_pizza.show()
# 출력
cheese pizza 메뉴의 가격은 20000원입니다.

# Menu를 상속받아 New_Menu로 업데이트
class New_Menu(Menu):
						# 속성값들
    def __init__(self, name, price, type):
    	# Menu의 생성자 상속받기
        super().__init__(name, price)
        # 새로운 속성 정의
        self.type = type
        
	# Menu의 메서드 재정의
    def show(self):
        print("{} 종류인 {} 메뉴의 가격은 {}원입니다.".format(self.type, self.name, self.price))

# 인스턴스 재정의
a_pizza = New_Menu("cheese pizza", 20000, "pizza")
a_pizza.show()
# 출력
pizza 종류인 cheese pizza 메뉴의 가격은 20000원입니다.

0개의 댓글