객체 지향 프로그램에서 사용하는 클래스를 학습해 보겠습니다.

Class

형태

class 클래스이름으로 클래스를 생성 할 수 있습니다.

class 클래스이름:
    클래스 내용        

#내용이 빈 클래스를 만들 경우.
class 클래스이름:
    pass        

사용법

인스턴스 형태로 생성하여 사용 합니다.

변수  = 클래스이름();

생성자, 소멸자, 사용자 함수

생성자의 첫번째 매개 변수는 self 를 꼭 포함해야 한다.
클래스 내부에 __xxx__ 로 구성된 메소드는 특수 기능으로 존재하는 메소드 입니다. __str__, __eq__,__dir__ 등등

class 클래스이름:
    def __init__(self, sample, 사용자 정의 매개변수):
        self.sample = sample
        pass

    def 사용자함수명(self, 사용자 정의 매개변수):
        pass

    def __del__(self):
        print('객체가 소멸됩니다.')

생성 예 및 소속 확인방법

isinstance(인스턴스, 클래스) 를 사용해서 소속을 확인 할 수 있습니다.
type(인스턴스) == 클래스 로도 확인 할 수 있습니다.


class Car:
    def __init__(self):
        pass

truck = Car()  #객체 생성

print( isinstance(truck, Car)) # True
print( type(truck) == Car) # True

Sample Code

class Car:
    def __init__(self, name):
        self.name = name
    def setDoor(self, door):
        self.door = door
    def getDoor(self):
        return self.door
    def getFeatures(self):
        pass

c = Car('NewCar')
c.setDoor(4)
print(c.getDoor()) # 4

상속

부모 클래스를 상속 합니다.

class Bus (Car):
    def getFeatures(self):
        print("this is a bus:", self.name)
 
class Truck (Car):
    def getFeatures(self):
        print("this is a Truck:", self.name)

b = Bus('시내버스') 
t = Truck('화물트럭')

list = [b, t]
for i in list:
    i.getFeatures()

#출력
this is a bus: 시내버스
this is a Truck: 화물트럭

관련된 글 (python > lecture-python-basic)