11. 객체에 대한 설명으로 틀린 것은?
① 객체는 상태, 동작, 고유 식별자를 가진 모든 것이라 할 수 있다.
② 객체는 공통 속성을 공유하는 클래스들의 집합이다.
③ 객체는 필요한 자료 구조와 이에 수행되는 함수들을 가진 하나의 독립된 존재이다.
④ 객체의 상태는 속성값에 의해 정의된다.
객체(Object) 개념과 틀린 선택지 분석
객체지향 프로그래밍(OOP, Object-Oriented Programming)에서 **객체(Object)**는 클래스(Class)에서 생성된 독립적인 실체를 의미합니다.
이번 글에서는 객체의 개념과 특징을 설명하고, 문제에서 제시된 선택지 중 틀린 항목을 분석하겠습니다.
1. 객체(Object)란?
✅ 객체(Object)의 정의
- 객체는 속성(데이터)과 동작(메소드)을 포함하는 독립적인 개체입니다.
- 현실 세계의 사물을 컴퓨터 시스템에서 모델링한 개념입니다.
- 객체는 특정 클래스로부터 생성되며, 클래스는 객체의 설계도(blueprint) 역할을 합니다.
✅ 객체의 주요 특징
- 상태(State)
- 객체가 가지는 속성(Attribute), 즉 데이터 값(멤버 변수)
- 예: "자동차" 객체의 속성 → "색상(빨강), 브랜드(현대), 속도(80km/h)"
- 동작(Behavior)
- 객체가 수행할 수 있는 기능(메소드, 함수)
- 예: "자동차" 객체의 동작 → "가속(), 감속(), 멈춤()"
- 고유 식별자(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)는 클래스에서 생성된 독립적인 실체로, 속성(데이터), 동작(메소드), 고유 식별자를 가집니다.
💡 문제에서 틀린 선택지는 "② 객체는 공통 속성을 공유하는 클래스들의 집합이다."이며, 객체는 클래스의 인스턴스로 생성되는 개별적인 개체입니다. 🚀
반응형
'기출문제 > 정보처리기사' 카테고리의 다른 글
2022년 2회 정보처리기사 기출문제 13번 (1) | 2025.02.07 |
---|---|
2022년 2회 정보처리기사 기출문제 12번 (0) | 2025.02.07 |
2022년 2회 정보처리기사 기출문제 10번 (0) | 2025.02.07 |
2022년 2회 정보처리기사 기출문제 9번 (0) | 2025.02.07 |
2022년 2회 정보처리기사 기출문제 8번 (0) | 2025.02.07 |