-
클래스와 객체와 인스턴스의 차이?CS/클래스 객체 인스턴스의 차이? 2023. 7. 16. 19:01
클래스(Class)
:클래스(class)란 객체(object)를 만들기 위한 틀이며 실제 데이터를 가지고 있지는 않고 만들어 낼 객체의 속성과 메서드의 집합을 담아 놓은 것이다.
객체(Object)
: 객체는 속성과 메서드를 포함한 데이터 구조 이며 속성(attribute), 동작(method)을 가지고 있다 또한 객체는 개별적이며 독립적인 상태를 가질 수 있고 서로 다른 객체는 동일한 속성이나 동작을 가질 수 있지만 그값이나 동작 결과는 다를 수 있다.
속성은 객체의 특징이나 상태를 나타내는 변수 이고 예를 들면 자동차라는 객체의 속성으로 브랜드,색상 모델등을 의미한다.
동작(Method)는 객체의 기능이나 동작을 나타내는 함수이다 예를 들어 자동차 객체의 동작으로 주행,가속,정지등을 의미한다.
인스턴스(Instance)
: 인스턴스란(Instance)는 클래스를 기반으로 생성된 객체(Object)이다.
클래스의 인스턴스 또한 객체와 같이 속성과 동작을 가지고 있으며 각 인스턴스는 독립적인 상태를 가지며 서로 다른 값을 가질 수 없다.
객체가 메모리에 할당이 된 상태이며 런타임에 구동되는 객체를 말합니다. 객체와 같은 의미로 쓰이기도 합니다.참고로 인스턴스는 AWS의 클라우드의 가상서버라는 말로도 쓰입니다.
class Car { constructor(brand) { this.brand = brand; } drive() { console.log(`${this.brand} car is driving.`); } } // Car 클래스의 인스턴스 생성 const myCar = new Car("KIA"); // 인스턴스의 속성과 메서드 사용 console.log(myCar.brand); // 출력: Tesla myCar.drive(); // 출력: KIA car is driving.