Python기초 11 - 클래스

do yeon kim·2022년 6월 1일
0

Python(기초)_fastcampus

목록 보기
11/21

클래스

클래스와 객체의 용어 차이

  • 클래스
    객체를 만들기 위한 설계도

  • 객체
    설계도로부터 만들어진 제품

예를들어 붕어빵을 만든다면,
붕어빵을 만드는 틀을 클래스라고 하며
붕어빵틀에서 나온 붕어빵은 객체가 된다.

클래스 = 붕어빵 틀
객체 = 붕어빵


속성과 메서드

클래스는 속성과 메서드의 집합이다.

속성은 특징을 나타낸다
메서드는 동작을 나타낸다.

예를들어 사람이라는 클래스를 만든다고 생각해보자!

  • 사람의 속성으로는 이름, 나이, 성별, 주소 등 다양한 것이 있다.
    사람의 메서드로는 밥먹기, 잠자기, 걷기, 뛰기 등 다양한 것이 있다.

클래스 만들기

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 라고 출력된다.

  • a는 int클래스로부터 만들어진 객체이다.
  • b는 str클래스로부터 만들어진 객체이다.
  • c는 bool클래스로부터 만들어진 객체이다.
b.__dir__() 문자열 객체 안에 있는 메서드들을 확인할수 있다.

https://fastcampus.co.kr/dev_online_pyweb

0개의 댓글