Computer Science/Python
[파이썬] 클래스(class)
inee0727
2022. 6. 29. 14:45
인스턴스(Instance)
인스턴스와 객체는 같은 의미이며, 인스터스는 클래스에 의해 만들어진 객체이다. 즉, 클래스는 인스턴스를 만드는 하나의 틀이라고 볼 수 있다.
클래스(Class)
클래스는 변수와 함수를 모아놓은 것이다. 예를들어, 모양틀을 클래스라고 하며 모양틀에 찍혀져서 만들어지는 어떤 모양의 쿠키를 인스턴스라고 한다.
클래스는 틀일 뿐이고, 인스턴스는 틀을 가지고 만들어지 내용물과 같은 것이다.
class Student:
name = "김철수"
def info(self):
print("제 이름은 " + self.name + "입니다.")
inst = Student()
print(type(inst))
inst.info()
class Student:
name = "김철수"
def info(self):
print("제 이름은 " + self.name + "입니다.")
Student라는 이름의 클래스 선언하는 것으로, 클래스를 선언하는 방법은 다음과 같다.
class 클래스명 : 문장 ... |
info라는 함수도 Student 클래스 안에 있다는 것을 확인할 수 있으며, 클래스는 변수와 함수를 모아 넣은 집합체라고 말할 수 있다.
inst = Student()
print(type(inst))
inst.info()
그 다음, 인스턴스 객체를 만드는데 여기서 클래스 이름(Student) 호출하고 이를 inst 변수에 집어넣음으로써 간단하게 인스턴트 객체 만들 수 있다. type이라는 내장 함수를 사용하여 변수 inst 형식을 알아보니 Student라는 클래스를 통해 생성된 인스턴스 객체임을 알 수 있다.
출력결과 class '__main__.Student' |
self
self는 현재의 인스턴스 객체를 가리키는 기능을 한다. (1) 클래스 내에서 함수가 정의될 경우에는 첫번째 매개변수로 self가 따라붙어야 한다. (2) 클래스 내부의 멤버에 접근할 때에도 앞에 self.를 붙여줘야 한다.
class Dog:
def cry(self):
print("왈왈!")
dog = Dog()
dog.cry()
출력결과 왈왈! |
출처 : https://blog.hexabrain.net/284?category=498286