목록객체지향 2
2030 Engineer
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 from abc import ABC, abstractmethod class Message(ABC): @abstractmethod def print_message(self) -> None: pass class Sendable(ABC): @abstractmethod def send(self, destination: str) -> None: pass class Email(Message, Sendable): def __init__(self, content, user_email): self.content = content self.user_email = user_email def print_message(self..
추상 클래스는 서로 관련있는 클래스들의 공통 부분을 묶어서 추상화한다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 from abc import ABC, abstractmethod class Vehicle(ABC): @abstractmethod def start(self): """추상 메소드 start: 교통 수단의 주행을 시작한다""" pass @property @abstractmethod def speed(self): """변수 _speed(교통 수단의 속도)에 대한 추상 getter 메소드""" pass def stop(self): """일반 메소드 stop: 교통 수단의 속도를 0으로 바꾼다""" self.speed = 0 Car, Bicycle, Train 등..