[정보처리기사] 정처기 실기를 대비하기 위한 객체지향에 대해 알아보자

2025. 2. 9. 13:00정보처리기사

728x90
반응형

 

 안녕하세요. 진득 코딩입니다.

 

 요즘 자바를 공부하면서 객체지향에 대한 공부를 하면서 동시에 정처기 실기를 준비하고 있습니다.

 

 마침 정처기에서도 객체지향(Object-Oriented)에 대한 내용이 나오고 정처기 실기에서 굉장히 중요한 개념이기 때문에 시험 대비용으로 간단하게 정리해 보도록 하겠습니다.

객체지향

 

  • 객체지향은 소프트웨어의 각 요소들을 객체(Object)로 만든 후, 객체들을 조립해서 소프트웨어를 개발하는 기법입니다.

  • 소프트웨어의 재사용 및 확장이 용이하여 고품질의 소프트웨어를 빠르게 개발할 수 있고 유지보수가 쉽습니다.

  • 객체지향의 구성요소
    - 객체(Object)
    - 클래스(class)
    - 메시지(Message)

  • 객체지향의 특징
    - 캡슐화(Encapsulation)
    - 상속(Ingeriance)
    - 다형성(Polymorphism)
    - 연관성(Relationship)

객체(Object)

 

  • 객체는 데이터와 이를 처리하기 위한 함수를 묶어 놓은 소프트웨어 모듈입니다.

 데이터  객체가 가지고 있는 정보로, 속성이나 상태, 분류 등
 함수  - 객체가 수행하는 기능으로 객체가 갖는 데이터를 처리하는 알고리즘
 - 객체의 상태를 참조하거나 변경하는 수단

 

클래스(Class)

 

  • 클래스는 공통된 속성과 연산을 갖는 객체의 집합입니다.

  • 각각의 객체들이 갖는 속성과 연산을 정의하고 있는 틀입니다.

  • 클래스에 속한 각각의 객체를 인스턴스(instance)라고 합니다.

메시지(Message)

 

  • 메시지는 객체들 간의 상호작용을 하는데 사용되는 수단으로, 객체에게 어떤 행위를 하도록 지시하는 명령 또는 요구사항입니다.

  • 메시지를 받은 객체는 대응하는 연산을 수행하여 예상된 결과를 반환합니다.

캡슐화(Encapsulation)

 

  • 캡슐화는 외부에서의 접근을 제한하기 위해 인터페이스를 제외한 세부 내용을 은닉하는 것입니다.

  • 캡슐화된 객체는 외부 모듈의 변경으로 인한 파급 효과가 적습니다.

  • 객체들 간에 메시지를 주고받을 때 상대 객체의 세부 내용은 알 필요가 없으므로 인터페이스는 단순해지고, 객체 간의 결합도는 낮아집니다.

상속(Inheritance)

 

  • 상속은 상위 클래스의 모든 속성과 연산을 하위 클래스가 물려받는 것입니다.

  • 하위 클래스는 물려받은 속성과 연산을 다시 정의하지 않아도 즉시 자신의 속성으로 사용할 수 있습니다.

  • 하위 클래스는 상속받은 속성과 연산 외에 새로운 속성과 연산을 첨가하여 사용할 수 있습니다.

다형성(Polymorphism)

 

  • 다형성은 하나의 메시지에 대해 각각의 객체가 가지고 있는 고유한 방법으로 응답할 수 있는 능력입니다.

연관성(Relationship)

 

  • 연관성은 두 개 이상의 객체들이 상호 참조하는 관계를 의미합니다.

  • 연관성의 종류

종류 의미 특징
 is member of  연관화(Association)  2개 이상의 객체가 상호 관련되어 있음을 의미함
 is instance of  분류화(Classfication)  동일한 형의 특성을 갖는 객체들을 모아 구성하는 것
 is part of  집단화(Aggregation)  관련 있는 객체들을 묶어 하나의 상위 객체를 구성하는 것
 is a  일반화(Generalization)  공통적인 성질들로 추상화한 상위 객체를 구성하는 것
 특수화/상세화(Specilization)  상위 객체를 구체화하여 하위 객체를 구성하는 것

 

728x90
반응형
LIST