Python class 정의

Lee yeonseong·2020년 8월 7일
0

클래스(Class)
파이썬에서 클래스는 간단하게 설명하자면 변수와 함수를 모아놓은것이다.
한가지 예를 들어보면 붕어빵을 만들때 모양틀을 이용해야된다. 이때 모양틀에 찍혀져서 만들어지는
붕어빵이 인스턴스(Instancce)라하고 붕어빵 틀을 클래스(Class)라고 할수있다.

인스턴스(Instance)
인스턴스와 객체는 같은 의미인데, 인스턴스는 클래스에 의해 만들어진 객체를 인스턴스라고 한다.
클래스는 인스턴스를 만드는 하나의 틀이라고 볼 수 있다.

class Person:
	def __init__(self, name, age = None):
    	self.name = name
        self.age = age
        
    def introduce(Self):
    	print("안녕하세요. 제 이름은" + self.name +"입니다.")
        if self.age:
        	print("나이는" + self.age +"입니다.")
       

클래스 객체 만들기

#객체 생성
Yeonseong = Person("이연성", 27)

#객체에 정의된 함수 사용
Yeonseong.introduce()
안녕하세요. 제 이름은 이연성입니다.
나이는 27 입니다.

클래스를 정의한다는 것은, 사실상 사용자 정의 팩토리함수를 정의 하는 것과 같다.

  1. yeonseong = Person("이연성", 27)
    식별자(yeonseong)가 객체에 대한 포인터가 된다.
  2. Person.init(yeonseong)
    1번을 실행하면, self 자리에 새로 만든 객체를 가르키는 식별자(yeonseong)가 대신들어간다

#self 인자는 어떤 객체의 데이터를 처리해야 하는지 알 수 있게 해준다.
모든 메서드(함수)의 첫 번째 인자는 self이다. init() 함수 분만 하니라, 클래스에 정의되어 있는 모든 함수들이 self를 첫번쨰 인자로 필요로한다.

profile
더 나은 개발자가 되자.

0개의 댓글