PART 10. 객체

목차


학습 목표


10.1 객체와 클래스

객체 지향 프로그래밍(OOP)은 현실 세계의 사물을 객체로 표현하여 프로그램을 구성하는 방식이다.

클래스와 객체

본 예제는 해당 단원에서 다루는 핵심 개념을 코드로 확인하기 위한 예시이다. 변수의 의미를 파악한 뒤, 입력·처리·출력의 흐름을 따라 실행 결과를 해석하는 것이 중요하다.


class Account:
    def __init__(self, amount=0):
        self.__balance = amount

    def deposit(self, amount):
        self.__balance += amount
        return self.__balance

    def withdraw(self, amount):
        self.__balance -= amount
        return self.__balance

    def get_balance(self):
        return self.__balance

객체 생성과 사용

본 예제는 해당 단원에서 다루는 핵심 개념을 코드로 확인하기 위한 예시이다. 변수의 의미를 파악한 뒤, 입력·처리·출력의 흐름을 따라 실행 결과를 해석하는 것이 중요하다.


a1 = Account(100)
a1.deposit(50)
print(a1.get_balance())

10.2 상속

상속은 기존 클래스의 속성과 메서드를 새로운 클래스가 물려받는 기능이다.

본 예제는 해당 단원에서 다루는 핵심 개념을 코드로 확인하기 위한 예시이다. 변수의 의미를 파악한 뒤, 입력·처리·출력의 흐름을 따라 실행 결과를 해석하는 것이 중요하다.


class Student:
    def __init__(self, name, computer):
        self.name = name
        self.computer = computer

    def get_name(self):
        return self.name

class Science(Student):
    def __init__(self, name, computer, science):
        super().__init__(name, computer)
        self.science = science

    def get_average(self):
        return (self.computer + self.science) / 2

10.3 [플러스 예제] 자동차 클래스

본 예제는 해당 단원에서 다루는 핵심 개념을 코드로 확인하기 위한 예시이다. 변수의 의미를 파악한 뒤, 입력·처리·출력의 흐름을 따라 실행 결과를 해석하는 것이 중요하다.


class Car:
    def __init__(self, model, efficiency):
        self.__model = model
        self.__efficiency = efficiency

    def get_model(self):
        return self.__model

    def get_fuel_amount(self, distance):
        return distance / self.__efficiency