클래스
클래스와 객체의 용어 차이
클래스
객체를 만들기 위한 설계도
객체
설계도로부터 만들어진 제품
예를들어 붕어빵을 만든다면,
붕어빵을 만드는 틀을 클래스라고 하며
붕어빵틀에서 나온 붕어빵은 객체가 된다.
클래스 = 붕어빵 틀
객체 = 붕어빵
속성과 메서드
클래스는 속성과 메서드의 집합이다.
속성은 특징을 나타낸다
메서드는 동작을 나타낸다.
예를들어 사람이라는 클래스를 만든다고 생각해보자!
클래스 만들기
class 클래스이름:
def 메서드이름(self) :
명령블록
클래스에서 모든 메서드는 첫번째 매개변수로 self를 받는다.
클래스 호출하기
class 클래스이름:
def 메서드이름(self) :
명령블록
인스턴스 = 클래스이름()
인스턴스.메서드()
클래스를 호출한뒤 생성된 객체를 인스턴스라는 특정한 변수에 저장한다.
인스턴스.메서드()를 통해서 class에서 정의된 메서드를 호출할 수 있다.
클래스예시
class Unit:
def __init__(self, name, hp, attacck)
self.name = name
self.hp = hp
self.attack = attack
def move(self, location):
print(f"{self.name}이 {location}으로 움직입니다.")
unit1 = Unit("마린", 50,100)
unit1.move("1시")
Unit는 클래스이고
Unit클래스로부터 객체가 만들어져서 인스턴스변수인 unit1에 저장된다.
파이썬에서는 자료형도 클래스이다.
a = 10
b = "문자열객체"
c = True
print(type(a))
print(type(b))
print(type(b))
==출력결과==
class "int"
class "str"
class "bool"
출력결과를 보면 class 라고 출력된다.