기출문제/정보처리기사

2020년 3회 정보처리기사 기출문제 7번

엉클지니 2025. 4. 8. 16:06

7. 객체지향에서 정보 은닉과 가장 밀접한 관계가 있는 것은?

    Encapsulation    Class

   Method              Instance

 

문제 분석

이 문제는 객체지향에서 정보 은닉과 가장 밀접한 관계가 있는 개념을 묻고 있습니다. 정보 은닉(Information Hiding)은 객체 지향 프로그래밍에서 중요한 개념으로, 객체 내부의 데이터를 외부에서 직접 접근하지 못하도록 숨기고, 이를 메서드를 통해서만 접근할 수 있도록 만드는 것입니다. 이를 통해 객체의 내부 구현을 보호하고, 외부와의 상호작용을 정의하는 방법입니다.

정보 은닉의 개념

정보 은닉은 객체의 상태(state), 즉 속성(attributes) 을 외부에서 직접 접근하지 못하도록 숨기고, 대신 **메서드(methods)**를 통해 데이터를 조작하도록 하는 것입니다. 이를 통해 객체의 내부 구현을 **캡슐화(encapsulation)**하고, 변경에 대한 영향을 최소화할 수 있습니다.

선택지 분석

  1. Encapsulation (캡슐화)
    캡슐화는 정보 은닉의 핵심 개념입니다. 객체의 속성(정보)을 캡슐화하여 외부에서 접근하지 못하도록 하고, 대신 메서드를 통해서만 접근하도록 하는 기법입니다. 캡슐화가 바로 정보 은닉을 구현하는 방법이라고 할 수 있습니다.
    → 정보 은닉과 가장 밀접한 관계가 있음
  2. Class (클래스)
    클래스는 객체를 생성하기 위한 설계도입니다. 클래스 안에는 **속성(변수)**과 메서드가 포함됩니다. 클래스 자체가 정보 은닉을 직접적으로 구현하는 것은 아니지만, 클래스 내에서 정보 은닉을 적용할 수 있습니다. 따라서 클래스는 정보 은닉과 관련이 있지만, 직접적인 관계는 캡슐화가 더 강합니다.
    → 정보 은닉과 관련 있지만, 캡슐화가 더 밀접함
  3. Method (메서드)
    메서드는 클래스 내에서 정의된 행위를 나타내며, 객체가 데이터를 어떻게 처리할지를 정의합니다. 메서드는 정보 은닉을 통해 데이터에 대한 접근을 제어하는데 사용됩니다. 메서드를 통해 객체의 상태를 변경하거나 조회할 수 있기 때문에 정보 은닉의 일환으로 중요한 역할을 합니다. 그러나 메서드는 정보 은닉을 실현하는 기법인 캡슐화와 직접적인 연관이 있는 것은 아닙니다.
    → 정보 은닉과 간접적으로 관련 있음
  4. Instance (인스턴스)
    인스턴스는 클래스에서 생성된 구체적인 객체를 의미합니다. 인스턴스 자체는 정보 은닉과 직접적인 관계가 없습니다. 다만, 인스턴스가 정보 은닉을 적용한 클래스에서 생성되면 그 인스턴스 역시 정보 은닉의 규칙을 따르게 됩니다.
    → 정보 은닉과 간접적인 관계가 있음

결론

**Encapsulation (캡슐화)**는 정보 은닉을 실현하는 핵심 개념이므로, 정답은 ❶번입니다.


예시

  • 정보 은닉 예시: 객체 내부에 balance라는 속성이 있을 때, 외부에서 이 값에 직접 접근하지 못하게 하고, 대신 deposit()과 withdraw() 메서드를 통해서만 접근하도록 하는 방식입니다. 이렇게 하면 객체의 상태를 안전하게 보호할 수 있습니다.
  • 캡슐화: 클래스 내에서 정보를 숨기고, 공개된 메서드만을 통해 외부와 상호작용하도록 하는 것이 캡슐화입니다. 예를 들어, private 접근 제한자를 사용해 객체의 상태를 숨기고, public 메서드를 통해 접근할 수 있습니다.

요약

  • 정보 은닉은 객체의 상태를 숨기고, 메서드를 통해 접근하도록 하는 기법입니다.
  • 이 과정에서 **캡슐화(Encapsulation)**가 가장 밀접한 관계가 있습니다.

표로 정리

선택지 설명 정보 은닉과의 관계

❶ Encapsulation 객체의 속성을 숨기고, 메서드를 통해서만 접근하도록 하는 기법 밀접한 관계 있음
② Class 객체를 생성하는 설계도, 정보 은닉을 구현할 수 있음 관련 있음
③ Method 객체의 행동을 정의, 데이터 접근을 제어하는 데 사용될 수 있음 간접적 관계 있음
④ Instance 클래스에서 생성된 구체적인 객체 간접적 관계 있음

🎯 정답: ❶ Encapsulation

반응형