Python 추상클래스 만들기

2025. 2. 3. 13:30·Python
목차
  1. 추상 클래스 만들기

추상 클래스 만들기

import abc

class BaseClass(metaclass=abc.ABCMeta):
    @abc.abstractmethod
    def run(self):
        pass

## 아래처럼 
class BaseClass:
    __metaclass__ = abc.ABCMeta
    @abc.abstractmethod
    def run(self):
        pass

class ChildClass(BaseClass):
    def run(self):
        print("hello world!")

a = ChildClass()

위와 같이 metaclass로 해당 클래스가 추상 클래스라는 것을 명시한다.

이후 추상클래스로 쓰고 싶은 메서드에 abstractmethod 데코레이터를 달면 된다.

만약 상속받는 클래스에서 추상클래스를 구현하지 않으면 아래와 같이 에러가 뜬다.

Traceback (most recent call last):
  File "/var/task/main.py", line 12, in <module>
    a = ChildClass()
TypeError: Can't instantiate abstract class ChildClass with abstract method run

'Python' 카테고리의 다른 글

Python에서 멀티 스레드를 사용하지 않는 이유(Java와 비교, GIL)  (0) 2025.02.03
Python WSGI 서버 직접 만들어보기  (0) 2025.02.03
Python WSGI란?  (0) 2025.02.03
  1. 추상 클래스 만들기
'Python' 카테고리의 다른 글
  • Python에서 멀티 스레드를 사용하지 않는 이유(Java와 비교, GIL)
  • Python WSGI 서버 직접 만들어보기
  • Python WSGI란?
우띵이
우띵이
코딩해요~
  • 우띵이
    ChODING
    우띵이
  • 전체
    오늘
    어제
    • 분류 전체보기 (11)
      • JVM (6)
        • Java (4)
        • Kotlin (2)
      • Python (4)
      • JavaScript (0)
      • Computer Science (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Virtual Thread
    hash
    jdk21
    WSGI
    synchronize
    CORS
    CS
    binary
    spring security
    Metaclass
    computer science
    complement
    concurrency
    java
    Monitor
    Spring
    Thread
    Python
    kotlin
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
우띵이
Python 추상클래스 만들기

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.