1. 캡슐화 (Encapsulation)
- 외부 객체에서 -호출 가능-> 노출 메소드
-읽기/쓰기 가능-> 노출 데이터
-읽기/쓰기 불가능-> 숨긴데이터
-호출 불가능-> 숨긴 메소드
- 캡슐화란 객체의 필드, 메소드를 하나로 묶고, 실제 구현 내용을 감추는 것을 말한다.
- 감내용을 감추는 이유는 외부의 잘못된 사용으로 인해 객체가 손상되지 않도록 하는데 있다.
- 자바는 접근 제한자(Access Modifier)를 사용해서 사용 범위를 제한함으로 외부로부터 보호한다.
2. 상속(Inheritance)
- 상위 객체는 자기가 가지고 있는 필드와 메소드를 하위 객체에게 물려주어
하위 객체가 사용할 수 있도록 해준다.
- 상위 객채 = 필드1 + 메소드1
하위 객체 = 필드1 + 메소드1 + 필드2 + 메소드2 (상위 객체에서 상속 받고 추가하여 설계 가능하다)
- 상속은 상위객체를 재사용하여 반복된 코드를 줄여주어 개발의 효율을 높여준다.
3. 다형성(Polymorphism)
- 같은 타입이지만 실행 결과가 다양한 객체를 이용할 수 있는 성질을 말한다.
- 자바는 다형성을 위해 부모 클래스 또는 인터페이스의 타입 변환을 허용한다.
- 부모 타입에는 모든 자식 객체가 인터페이스 타입에는 모든 구현 객체가 대입될 수 있다.
- 예) 자동차 설계시 타이어 인터페이스 타입을 적용했다면 이 인터페이스를 구현한 타이어들은 어떤 것이든 상관없이
장착(대입)이 가능하다.
'Study_web > Java' 카테고리의 다른 글
배열 메서드 (0) | 2021.06.19 |
---|---|
싱글톤(Singleton) (0) | 2021.03.02 |
List와 Map 간단하게 이해하기 (0) | 2021.02.19 |
클래스 선언 (0) | 2021.01.03 |
객체와 클래스 (0) | 2021.01.03 |