객체지향에서 객체(Object)란 무엇인가?

반응형

객체지향에서 객체(Object)란 무엇인가?

객체지향 프로그래밍에서 객체(Object)데이터(속성)와 기능(동작)을 하나로 묶어 놓은 개념이다. 객체는 현실 세계의 사물을 프로그램 안으로 옮긴 것이라고 이해하면 된다.


객체를 쉽게 이해하는 예시

자동차를 예로 들면 다음과 같다.

  • 속성(데이터) : 색상, 속도, 연료량
  • 기능(동작) : 달리기, 멈추기, 경적 울리기

이처럼 하나의 사물에 대한 특징과 행동을 함께 묶어 놓은 것이 객체이다.


JavaScript로 보는 객체 예제

<script>
const car = {
  color: "red",
  speed: 0,

  run: function() {
    console.log("차가 달립니다.");
  },

  stop: function() {
    console.log("차가 멈춥니다.");
  }
};

car.run();
car.stop();
</script>

위 코드에서 car가 객체이며, color, speed는 속성(데이터), run(), stop()은 메서드(기능)이다.


클래스(Class)와 객체(Object)의 차이

구분 설명
클래스(Class) 객체를 만들기 위한 설계도
객체(Object) 클래스를 이용해 실제로 생성된 실체

JavaScript 클래스 기반 예제

<script>
class Car {
  constructor(color) {
    this.color = color;
    this.speed = 0;
  }

  run() {
    console.log(this.color + " 자동차가 달립니다.");
  }
}

const myCar = new Car("blue");
myCar.run();
</script>

정리

  • 객체는 데이터 + 기능을 묶은 하나의 단위이다.
  • 현실 세계의 사물을 프로그램으로 표현한 것이다.
  • JavaScript에서는 객체 리터럴 또는 class 문법으로 만들 수 있다.
반응형