클래스와 인스턴스
앞에서 클래스사용 법에 대해 간략하게 설명 드렸는데 개념이 없이 바로 예제로 설명해 어려움이 있을 것 같아
개념 설명을 추가 하도록 하겠습니다.
다들 어린 시절 학교 앞에서 뽑기를 해본 적이 있을 것이다.
뽑기를 할때 국자에 소다와 설탕을 넣고 끓인 후 ☆ ♡ 등 모양의 틀로 찍고 그 모양대로 잘라먹은 기억을 다들 가지고 있을 것이다.
여기서 틀은 클래스라 생각 하자 틀을 찍어서 계속 뽑기를 여러개 만들 수 있는데 여기서 뽑기는 인스턴스라고 생각해보자
한개의 틀만 있으면 똑같은 뽑기를 계속 만들 수 있다.
아래 코드를 보자
#아래는 틀과 같은 역활을 하는 클래스 선언이다. class Human : h1 = Human() #Human 이라는 클래스(틀)로 h1 인스턴스(뽑기)를 만든다. h2 = Human() #Human 이라는 클래스(틀)로 h2 인스턴스(뽑기)를 만든다. |
클래스 변수와 함수
클래스 변수와 함수 사용법에 대해 알아 보겠다.
아래 Human 클래스에 이름 변수를 확인 할 수 있다.
사용 방법은 Class 밑에 들여쓰기 후 변수를 정의 하면 된다.
인스턴스 생성 후에는 인스턴스명.변수명을 사용 하면 된다.
class Human : name = "" h1 = Human() h1.name = "철수" |
함수 역시 클래스 밑에 들여쓰기 후 함수를 정의하면 된다.
인스턴스 생성 후에는 인스턴스명.함수명을 사용 하면 된다.
class Human : name = "" def introduce(self) : print "내 이름은 %s 입니다."%self.name h1 = Human() h1.name = "철수" h1.introduce() |
생성자 함수(__init__) 선언
앞에서 인스턴스 호출 후 다음에 인스턴스의 이름을 넣었다.
h1 = Human() h1.name = "철수" |
매번 인스턴스를 생성하고 이름을 넣어주는 일이 번거로울 것이다.
그래서 인스턴스를 생성과 동시에 인스턴스를 초기화 시켜주는것이 생성자 함수(__init__) 이다.
class Human : name = "" def __init__(self,name): self.name = name def introduce(self) : print "내 이름은 %s 입니다."%self.name h1 = Human("철수") h1.introduce() |
이전 클래스 설명 가기 ====> click
'프로그램 > Python' 카테고리의 다른 글
[Python] 모듈 #2 (0) | 2016.11.13 |
---|---|
[Python] 모듈 #1 (0) | 2016.11.12 |
[Python]클래스 (2) (0) | 2016.09.16 |
[Python]클래스 (1) (0) | 2016.09.16 |
[Python]파일(File) 사용법 (0) | 2016.09.16 |