JAMONGPROJECT

[DAY12] 클래스 본문

Challenge/FASTCAMPUS 30일 챌린지

[DAY12] 클래스

JAMONGPROJECT 2023. 3. 3. 12:42


2 객체와 클래스

 

객체와 클래스

 

파이썬에서 class란 변수와 메소드(객체 내에 정의된 함수를 메소드라 부른다)를 정의하는 일종의 틀이다. 그리고 이러한 틀을 통해 생성된 것들을 객체(object) 또는 class의 instance라 부른다.

 

석고상을 만들 때 그것을 만들기 위한 틀을 만들고 거기에 석고를 부어서 잔뜩 찍어내는 걸 생각하면 된다. 여기서 틀이 class이고 찍어져 나온 결과물이 객체이다.

 

Class와 객체의 관계는 제품 설계도와 제품, 붕어빵기계의 틀과 붕어빵 같은 관계라고도 생각할 수 있다.

 

 

파이썬에서 클래스 정의하는 법

 

class human:                                        # class의 이름 정의
 
  def __init__(selfheightage):            # class가 처음 호출될 때 실행될 method
    self.height = height                           # class 변수
    self.age = age
 
  def how_old(self):                               # class 메소드
    print(self.age, "살 입니다")
 
  def how_tall(self):
    print(self.height, 'cm 입니다')
 
  def __del__(self):
    print('삭제되었다')
 
 
객체 정의
 
Seunghyun = human(180, 31)    
 
변수 부르는 법
 
Seunghyun.height
 
메소드 호출
 
Seunghyun.how_old()
또는
human.how_old (Seunghyun )
 

같은 클래스의 두 객체는?

 

Seunghyun1 = human(180, 31)
Seunghyun2 = human(180, 31)
Seunghyun1 == Seunghyun2?
False!


똑같은 값을 통해 객체를 생성했지만 object는 생성될 때 마다 새로운 메모리 공간에 값을 생성하기 때문에 엄밀히
말하면 다른 값이다!

 

객체에 변수 추가하기.

 

Seunghyun = human(180, 31)
Seunghyun.weight = 90


이런 식으로 객체이름.변수이름 = 값 을 입력함으로써 객체에 변수를 추가할 수 있다.

 

 

메소드 생성에 유의할 점

 

메소드를 클래스 내부에 선언할 때는 첫 번째 매개변수는 반드시 현재 클래스의 객체가 되어야 합니다.
관습적으로 이를 self라는 단어로 표시합니다.
만약 메소드 내부에서 변수선언을 할 때 self.와 함께 선언을 하지 않을 경우 그 변수는 그 메소드의 지역변수가 됩니다.

 


 

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.

http://bit.ly/3Y34pE0

 

#패스트캠퍼스 #패캠챌린지 #수강료0원챌린지 #환급챌린지 #직장인인강 #직장인자기계발
#패캠인강후기 #패스트캠퍼스후기 #오공완

#한번에끝내는컴퓨터공학전공필수&인공지능심화초격차패키지Online

'Challenge > FASTCAMPUS 30일 챌린지' 카테고리의 다른 글

[DAY14] 상속과 예외처리  (0) 2023.03.05
[DAY13] 클래스  (0) 2023.03.04
[DAY11] 클래스  (0) 2023.03.02
[DAY10] 함수 심화학습  (0) 2023.03.01
[DAY9] 함수 심화학습  (0) 2023.02.28
Comments