1. 코드 재사용성 구현, 객체지향 모델의 상속의 개념 및 목적 (1) 상속 (Inheritance)의 개념 개념도 개념 부모 클래스의 특성을 물려받아 코드 재사용성을 높이고, 기능을 확장하여 다형성을 구현하는 객체지향 모델의 특성 (2) 상속의 특징 코드 재사용성 (Code Reusability) – 기존 속성과 메서드를 하위 클래스에서 그대로 물려받아 사용 – 동일한 코드를 중복해서 작성할 필요가 없어 효율적 개발/유지보수
1. 코드 유연성 극대화, 객체지향 모델의 다형성의 개념/특징 (1) 다형성 (Polymorphism)의 개념 개념도 개념 같은 메시지(메서드 호출)에 대해 객체의 타입에 따라 다른 동작을 수행하는 객체지향 모델의 특성 (2) 다형성의 특징 동적바인딩 – 프로그램이 실행되는 시점에 호출할 번지나 함수 연결 확장성 지원 – 수평적 확장성인 Overloading과 수직적 확장성인 Overriding 지원 재사용성 지원 – 기존에 구현된 부분은
1. 핵심 개념 모델링, 객체지향 모델의 추상화의 개념 및 목적 (1) 추상화 (Abstraction)의 개념 개념도 개념 복잡한 시스템의 핵심 기능을 모델링하고, 불필요 세부 사항은 감추어 단순화하는 객체지향 모델의 특성 (2) 추상화의 목적 핵심에 집중 – 복잡한 구현 세부 사항을 숨기고, 중요한 인터페이스만을 노출하여 사용자가 쉽게 이해 유연한 설계 – 내부 구현이 변경되더라도 외부 인터페이스는 그대로
1. 객체 정보 은닉, 객체지향 모델의 캡슐화의 개념 및 목적 (1) 캡슐화 (Encapsulation)의 개념 개념도 개념 관련 있는 데이터(속성)와 기능(메서드)을 하나의 클래스로 묶고, 구현 내용을 외부에 숨겨 외부의 직접적인 접근을 제한하는 객체지향 모델의 특성 (2) 캡슐화의 목적 내부 데이터 보호 – 외부에서 클래스 내부의 데이터/기능에 직접 접근 및 조작 차단 모듈 독립성 향상 – 객체의