/ OOP

클래스와 객체 (Class/Object,Instance)


객체지향 (class와 object)

  • Class를 틀/설계도라 할 때, Object는 하나의 완성품
  • Class의 속성, 함수 등은 그 Class의 Object도 갖게 됨
class classname:
	pass

‘classname’이라는 이름의 Class를 선언

dir (classname)

‘classname’ Class와 관련된 전체 속성들을 리스트로 출력

objectname = classname(objectname)

‘classname’ Class로 ‘objectname’이라는 이름의 Object 생성

type(objectname)

‘objectname’ Object의 Class를 출력

class classname:
	xpos = 0
	ypos = 0
	stance = "idle"

‘classname’ Class에 ‘xpos’, ‘ypos’, ‘stance’ 라는 속성을 추가

objectname.xpos = 50

‘objectname’ Object의 ‘xpos’ 속성을 50으로 변경

class classname:
	xpos = 0
	ypos = 0
	stance = "idle"
	
	def get_xypos(self)
		return self.xpos + self.ypos
		
	def set_xypos(self, data1, data2)
		self.xpos = data1
		self.ypos = data2

‘get_xypos’, ‘set_xypos’ Method를 추가

  • 위에서 ‘get_xypos’, ‘set_xypos’는 클래스 내부에서 접근했기 때문에 클래스 밖에서는 사용 불가
objectname.set_xypos(2, 2)

‘objectname’ Object에서 (2, 2)를 넣고 ‘set_xypos’ Method를 실행

  • ‘objectname’ Object의 ‘self.xpos’가 2, ‘self.ypos’가 2로 변경됨
-->