1 개념[ | ]
- Object-Oriented Programming (OOP)
- 객체지향 프로그래밍
- 객체 생성은 키워드 class를 사용
2 객체 생성[ | ]
class
키워드를 사용하여 Person라는 클래스(객체 생성 틀)을 만든다.- Person 클래스을 가지고 john, jane 객체를 각각 생성하였다.
Python
Copy
class Person(object):
def __init__(self, name, age):
self.name = name
self.age = age
def print_name(self):
print( self.name )
def print_age(self):
print( self.age )
john = Person('John Smith', 30)
jane = Person('Jane Doe', 20)
john.print_name() # John Smith
john.print_age() # 30
jane.print_name() # Jane Doe
jane.print_age() # 20
Loading
- →__init__와 print_name의 self는 자기 자신을 말함
- print_name를 살펴보면, JOHN.print_name()이 실행 될 때 self는 JOHN, JMNOTE.print_name()이 실행 될 때 self는 JMNOTE가 됨
3 상속[ | ]
- 상속은 하나의 클래스에서 또 다른 클래스의 정의를 그대로 상속하여 가져옴
Python
Copy
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def print_name(self):
print( self.name )
class Programmer(Person): # Person 클래스 상속
def print_job(self):
print('Programmer')
class Editor(Person): # Person 클래스 상속
def print_job(self):
print('Editor')
jane = Programmer('Jane Doe', 20)
jane.print_name() # Jane Doe
jane.print_job() # Programmer
john = Editor('John Smith', 30)
john.print_name() # John Smith
john.print_job() # Editor
Loading
- → Programmer와 Editor 클래스에서 Person 클래스를 상속하였음
4 객체 스타일[ | ]
새 형식
Python
Copy
class Person(object):
- → object 명시
예전 형식
Python
Copy
class Person:
- → object를 명시하지 않았지만 object는 자동 상속됨
5 참고[ | ]
편집자 Jmnote Jmnote bot
로그인하시면 댓글을 쓸 수 있습니다.