카테고리 없음
파이썬 객체지향 & 더블언더스코어메소드
철철22
2018. 8. 21. 11:47
반응형
파이썬 또한 객체 지향 언어이며
모든 데이터들은 객체로 표현되거나 객체 사이의 관계로 표현된다.
#class 선언
class Singer:
def sing(self):
return "Lalala~"
#객체 인스턴스 생성 및 사용
taeji = Singer()
taeji.sing()
'Lalala~'
상속>>> class Person:
def __init__(self, name, age):
self.Name = name
self.Age = age
def about(self):
print("이름: " + self.Name + "나이: " + self.Age)
>>> class Employee(Person):
def __init__(self, name, age, salary, hiredate):
Person.__init__(self, name, age)
self.Salary = salary
self.Hiredate = hiredate
def doWork(self):
print("doWork")
def about(self):
Person.about(self)
print("급여 " + self.Salary + "원 입사일 " + self.Hiredate)
>>> test1 = Employee("CheolCheol", "26", "3000", "2017/10/10")
>>> test1.doWork()
doWork
>>> test1.about()
이름: CheolCheol나이: 26
급여 3000원 입사일 2017/10/10
>>> test1.Name
'CheolCheol'
>>> test1.Age
'26'
그리고 더블언더스코어라는 특별한 메서드가 있다.
이 메서드는 말 그대로 _(언더스코어)가 두개가 붙어 더블언더스코어 메소드라 부른다. - Double UNDERscore Method
종류는 여러가지가 있다.
__init__ 메서드 (초기화)
-객체가만들어질때자동호출
__del__ 메서드 (소멸자)
__repr__ 메서드 (프린팅)
-문자열을리턴
__add__ 메서드 (덧셈)
__cmp__ 메서드 (비교)
이 외에도 여러가지가 있는데 여기 (파이썬 doc)에서 찾아보면 되는데 너무 많다....
반응형