프로그램 언어를 사용해보신 분이라면 대부분이 구현방법에 대해 알고 있을 것이라 믿습니다.
지금 구현하고자 하는 언어의 기본 클래스를 만드리고 쉽게 어떻게 만드는지에 대해서만 설명합니다.
''' Created on 2010. 5. 9. @author: all ''' class FirstClass(object): ''' classdocs ''' def __init__(self, params): ''' Constructor ''' self.data = params def setData(self, value): self.data = value def display(self): print self.data x = FirstClass("King Arthur") y = FirstClass(3.14) #x.setData("King Arthur") #y.setData(3.14) x.display() y.display() x.data = "New value" x.display()
Attribute을 이용한 클래스 설계.
''' Created on 2010. 5. 9. @author: all ''' class FirstClass(object): ''' classdocs ''' def __init__(self, params): ''' Constructor ''' self.data = params def __add__(self, value): return FirstClass(self.data + value) def __mul__(self, value): self.data = self.data * value def setData(self, value): self.data = value def display(self): print self.data #x = FirstClass("King Arthur") #y = FirstClass(3.14) # ##x.setData("King Arthur") ##y.setData(3.14) # #x.display() #y.display() # #x.data = "New value" #x.display() a = FirstClass("abc") # new __init__ called a.display() b = a + "abc" b.display() a * 3 a.display()
'프로그램언어 > python' 카테고리의 다른 글
pysqlite error [ src/connection.h error ] (0) | 2011.04.04 |
---|---|
[Python] 폴더에 존재하는 파일 리스트로 저장. (0) | 2010.06.10 |
[Python] Modules 사용에 대한 용어 정의 (0) | 2010.05.05 |
[Python] Class Operator Overloading (0) | 2010.05.02 |
[Python] Why You Will Care: Dictionary Interfaces (0) | 2010.05.01 |