기출문제/정보처리기사

2022년 2회 정보처리기사 기출문제 11번

엉클지니 2025. 2. 7. 09:01

11. 객체에 대한 설명으로 틀린 것은?

    객체는 상태, 동작, 고유 식별자를 가진 모든 것이라 할 수 있다.

     객체는 공통 속성을 공유하는 클래스들의 집합이다.

    객체는 필요한 자료 구조와 이에 수행되는 함수들을 가진 하나의 독립된 존재이다.

    객체의 상태는 속성값에 의해 정의된다.

 

객체(Object) 개념과 틀린 선택지 분석

객체지향 프로그래밍(OOP, Object-Oriented Programming)에서 **객체(Object)**는 클래스(Class)에서 생성된 독립적인 실체를 의미합니다.
이번 글에서는 객체의 개념과 특징을 설명하고, 문제에서 제시된 선택지 중 틀린 항목을 분석하겠습니다.


1. 객체(Object)란?

객체(Object)의 정의

  • 객체는 속성(데이터)과 동작(메소드)을 포함하는 독립적인 개체입니다.
  • 현실 세계의 사물을 컴퓨터 시스템에서 모델링한 개념입니다.
  • 객체는 특정 클래스로부터 생성되며, 클래스는 객체의 설계도(blueprint) 역할을 합니다.

객체의 주요 특징

  1. 상태(State)
    • 객체가 가지는 속성(Attribute), 즉 데이터 값(멤버 변수)
    • 예: "자동차" 객체의 속성 → "색상(빨강), 브랜드(현대), 속도(80km/h)"
  2. 동작(Behavior)
    • 객체가 수행할 수 있는 기능(메소드, 함수)
    • 예: "자동차" 객체의 동작 → "가속(), 감속(), 멈춤()"
  3. 고유 식별자(Identity)
    • 동일한 속성을 가진 객체라도 각 객체는 메모리 내에서 고유하게 구별됨
    • 예: "서로 다른 두 대의 빨간색 현대 자동차" → 같은 속성을 가질 수 있지만, 각각 다른 객체로 인식됨

2. 문제에서 제시된 선택지 분석

① 객체는 상태, 동작, 고유 식별자를 가진 모든 것이라 할 수 있다.

정답 (올바른 설명)

  • 객체는 상태(속성값), 동작(메소드), 고유 식별자(메모리 내 주소 등)를 가지는 독립적인 개체입니다.
  • 현실 세계의 사물과 동일한 개념으로, 객체는 특정 상태를 가지며 행동할 수 있습니다.

② 객체는 공통 속성을 공유하는 클래스들의 집합이다.

🚨 틀린 설명! (정답)

  • 객체는 "클래스들의 집합"이 아니라, 클래스에서 생성된 개체(Instance)입니다.
  • 클래스는 **공통 속성과 동작을 정의하는 템플릿(설계도)**이며, 객체는 이 클래스를 기반으로 만들어진 구체적인 실체입니다.

🚨 틀린 부분:

  • "객체는 공통 속성을 공유하는 클래스들의 집합이다." → ❌
  • 올바른 표현: "객체는 클래스의 인스턴스이며, 클래스에서 정의한 속성과 동작을 가진 독립적인 개체이다."

예제 (Java)

// 클래스 정의
class Car {
    String color;
    int speed;

    void accelerate() {
        speed += 10;
    }
}

// 객체 생성
public class Main {
    public static void main(String[] args) {
        Car myCar = new Car();  // 객체 생성
        myCar.color = "Red";    // 객체의 상태(속성값) 설정
        myCar.accelerate();     // 객체의 동작(메소드) 실행
    }
}
  • Car 클래스는 자동차의 속성과 동작을 정의한 설계도.
  • myCar는 Car 클래스로부터 생성된 **객체(인스턴스)**로, 독립적인 실체.

클래스는 공통 속성을 정의하고, 객체는 클래스에서 생성된 실체이므로, "객체가 클래스들의 집합"이라는 설명은 틀림!


③ 객체는 필요한 자료 구조와 이에 수행되는 함수들을 가진 하나의 독립된 존재이다.

정답 (올바른 설명)

  • 객체는 데이터(속성)와 동작(메소드)를 포함하는 독립적인 실체입니다.
  • 객체는 특정 클래스의 인스턴스로, 해당 클래스에서 정의된 구조와 메소드를 가집니다.

④ 객체의 상태는 속성값에 의해 정의된다.

정답 (올바른 설명)

  • 객체의 상태(State)는 객체가 가지고 있는 속성(멤버 변수)의 현재 값으로 결정됩니다.
  • 예를 들어, "자동차 객체의 색상(color) = 빨강, 속도(speed) = 80km/h"이면, 자동차 객체의 상태는 해당 속성값을 기준으로 정의됨.

3. 정리

선택지 정답 여부 설명

① 객체는 상태, 동작, 고유 식별자를 가진 모든 것이라 할 수 있다. ✅ 올바름 객체는 상태(속성), 동작(메소드), 고유 식별자를 가짐
② 객체는 공통 속성을 공유하는 클래스들의 집합이다. ❌ 틀림 객체는 "클래스의 인스턴스"이며, "클래스들의 집합"이 아님
③ 객체는 필요한 자료 구조와 이에 수행되는 함수들을 가진 하나의 독립된 존재이다. ✅ 올바름 객체는 데이터와 메소드를 포함하는 독립적인 실체
④ 객체의 상태는 속성값에 의해 정의된다. ✅ 올바름 객체의 속성값(멤버 변수)이 상태(State)를 결정

4. 결론

💡 객체(Object)는 클래스에서 생성된 독립적인 실체로, 속성(데이터), 동작(메소드), 고유 식별자를 가집니다.
💡 문제에서 틀린 선택지는 "② 객체는 공통 속성을 공유하는 클래스들의 집합이다."이며, 객체는 클래스의 인스턴스로 생성되는 개별적인 개체입니다. 🚀

반응형