Python 클래스, 상속, 객체 지향 개념을 각각 짧은 예시와 함께 설명합니다.
40 cards · basic cards · AI-written, checked twice. Edit anything.
- Python에서 클래스(class)란 무엇인가요?
Show answer
공통된 속성과 메서드를 가진 객체를 만들기 위한 설계도 또는 템플릿
- 객체(object)는 클래스와 어떤 관계인가요?
Show answer
객체는 실제 데이터를 담고 있는 클래스의 구체적인 인스턴스입니다
- Python에서 클래스를 정의할 때 사용하는 키워드는 무엇인가요?
Show answer
class
- 클래스의 __init__ 메서드란 무엇인가요?
Show answer
새 인스턴스가 만들어질 때 자동으로 호출되는 생성자
- 메서드에서 self 매개변수는 무엇을 나타내나요?
Show answer
클래스의 현재 인스턴스에 대한 참조
- 인스턴스 속성(instance attribute)이란 무엇인가요?
Show answer
하나의 객체에만 속하며 인스턴스마다 다를 수 있는 속성
- 클래스 속성(class attribute)이란 무엇인가요?
Show answer
클래스 본문에 정의되어 모든 인스턴스가 공유하는 속성
- 객체 지향 프로그래밍에서 상속(inheritance)이란 무엇인가요?
Show answer
자식 클래스가 부모 클래스의 속성과 메서드를 물려받는 메커니즘
- 부모 클래스를 상속받는 자식 클래스는 어떻게 만드나요?
Show answer
class ChildClass(ParentClass):
- 메서드 오버라이딩(method overriding)이란 무엇인가요?
Show answer
부모 클래스의 메서드를 자식 클래스에서 다른 동작으로 다시 정의하는 것
- super()는 어떤 일을 하나요?
Show answer
자식 클래스 안에서 부모 클래스의 메서드를 호출합니다
- 객체 지향 프로그래밍에서 캡슐화(encapsulation)란 무엇인가요?
Show answer
데이터와 메서드를 하나로 묶고 내부 구현 세부 사항을 숨기는 것
- 속성 이름 앞의 밑줄 하나(_)는 무슨 의미인가요?
Show answer
관례상 그 속성이 비공개 또는 내부용임을 나타냅니다
- 속성 이름 앞의 밑줄 두 개(__)는 어떤 작용을 하나요?
Show answer
이름 맹글링(name mangling)이 일어나 클래스 외부에서 속성에 접근하기 어려워집니다
- @property 데코레이터로 무엇을 할 수 있나요?
Show answer
메서드를 점(.) 표기법으로 속성처럼 접근하고 사용할 수 있게 정의합니다