Python/클래스
Python 클래스, 객체, 인스턴스
Yonggyu
2023. 9. 21. 14:57
반응형
클래스(Class)
클래스란 미래에 만들어질 어떤 특정한 객체들에 대해 일반적으로 적용할 수 있는 변수와 메소드를 정의하고 있는 소프트웨어적인 설계도라고 할 수 있다.
클래스에는 속성 과 기능 부분이 있다. 속성은 변수이고 기능은 메소드(함수) 이다.
클래스 형식
class 클래스명(상속 클래스명):
맴버변수 = 값 --> 클래스 변수
def __init__(self): --> 생성자
...
def 메소드명(self): --> 메소드
...
메소드의 self는 현재의 객체를 가리키는 변수이다.
인스턴스(instance)
클래스가 설계도라면 설계도대로 실체화를 시켜야한다. 클래스가 실체화되도록 메모리에 할당하는것이 인스턴스이다.
객체(Object)
클래스가 설계도라면 클래스의 설계도대로 만들어진 실체화를 인스턴스라하며, 클래스의 인스턴스를 객체라고한다.
클래스를 하나 선언하면 클래스로 만들어진 객체를 여러 번 재사용할 수 있다.
객체 생성방법
객체명 = 클래스이름()
객체와 인스턴스 차이
class Car:
...
객체와 인스턴스는 차이가 있다. 위 코드처럼 클래스 Car가 존재한다면
car = Car()
이렇게 만든 car 가 객체이다. 그리고 car 객체는 클래스 Car의 인스턴스라고 부른다. 즉, 인스턴스는 명사의 개념보다 관계를 설명한다라고 이해하는것이 더 쉽다.
728x90
반응형