클래스, 객체, 인스턴스
2025. 5. 8. 15:57ㆍCS 공부, 기타
✅ 클래스 (Class)
- 정의: 객체를 만들기 위한 설계도 또는 틀
- 예시: “자동차”라는 클래스는 바퀴, 핸들, 엔진 등의 속성과, 달리기(run), 멈추기(stop) 같은 기능을 정의합니다.
- 특징: 실제 메모리에 할당되지 않고, 구조와 행동만 정의합니다.
class Car:
def __init__(self, color):
self.color = color
def drive(self):
print(f"{self.color} 차가 달립니다.")
✅ 객체 (Object)
- 정의: 클래스에 정의된 구조에 따라 실제로 메모리에 생성된 실체
- 객체는 속성과 기능의 집합이며, 속성과 기능을 객체의 멤버라고 한다.
- 속성(Property) : 멤버변수(member variable), 특성(attribute), 필드(field), 상태(state)
- 기능(function) : 메서드(method), 행위(behavior), 함수(function)
- 객체는 모든 인스턴스를 대표하는 포괄적인 의미를 갖는다.
my_car = Car("빨간색") # → 객체
✅ 인스턴스 (Instance)
- 정의: 객체와 거의 같은 말이지만, 특정 클래스에서 생성된 객체를 그 클래스의 인스턴스라고 합니다.
- 객체를 소프트웨어에 실체화 하면 그것을 ‘인스턴스’라고 부른다.
- 실체화된 인스턴스는 메모리에 할당된다.
- 클래스가 가지고 있는 메소드(method)를 모두 상속 받는다.
- 쉽게 말하면 my_car는 Car 클래스의 인스턴스입니다.
isinstance(my_car, Car) # True
인스턴스라는 용어는 반드시 클래스와 객체 사이의 관계로 한정지어서 사용할 필요는 없다.
인스턴스는 어떤 원본(추상적인 개념)으로부터 ‘생성된 복제본’을 의미한다.
✅ 인스턴스화 (Instantiation)
- 정의: 클래스를 기반으로 실제 객체(인스턴스)를 생성하는 과정
- 문법: 파이썬에서는 클래스명()을 호출하면 인스턴스화가 일어납니다.
my_car = Car("파란색") # Car 클래스를 인스턴스화 → my_car라는 인스턴스 생성
'CS 공부, 기타' 카테고리의 다른 글
JWT (Json Web Token) (0) | 2025.05.13 |
---|---|
인스턴스(instance) 용어 사용 사례 정리 (0) | 2025.05.08 |
스레드 세이프(thread safe) (0) | 2025.03.13 |
Lighthouse (1) | 2024.12.13 |
Swagger (0) | 2024.10.02 |