JAVA

9.[JAVA] 객체 지향 프로그램 4가지 개념

Gunadian 2021. 11. 17. 10:33

객체 지향 프로그램 4가지 개념

 

1. 추상화, 객체를 설계하는 기초 단계

객체지향 프로그래밍에서 추상화의 의미는 내가 만들고자 하는 객체의 특성이나 기능이 무엇인지 먼저 정리하는 것을 의미한다. 정의된 객체의 기능을 클래스의 메서드로 표현하고 데이터는 속성(field)으로 선언한다. 이런 과정을 코딩 전에 실시해야 한다.

추상화의 특징으로는 문제 영역이나 관점에 의존적이라는 점이며, 이로 인해 같은 대상이라고 하더라도 어떠한 문제 영역, 관점에서 추상화를 진행했느냐에 따라 여러 가지의 추상화 모델이 나올 수 있다는 점이다. 

 

2. 캡슐화, 관련된 것들을 따로 모은 클래스

서로 관련 있는 기능이나 데이터를 한 곳으로 모아서 효율적으로 관리 및 사용할 수 있도록 하는 것.

꼭 필요한 데이터나 기능만 외부에 노출시키는 것이다.

데이터를 보호,은닉할 목적

 

3. 상속성

프로그래밍의 관점에서 상속은 상속 관계에 있는 두 클래스 중 한 클래스가 갖고 있는 속성과 메소드들을 다른 클래스에게 물려 주는 것을 의미한다. 이때 물려 주는 역할을 하는 클래스를 부모 클래스(parent class) 또는 상위 클래스(super class)라고 하며 상속받는 역할을 하는 클래스를 자식 클래스(child class) 또는 하위 클래스(sub class)라고 한다.

상속받는다라는 의미는 자식 클래스가 부모 클래스로부터 메소드와 속성을 바로 가져다 쓸 수 있다는 뜻이다.

is-a 법칙을 이용해서 논리적으로 부모 클래스와 자식 클래스를 구분할 수 있다.

4. 다형성

다형성(Polymorphism)은 하나의 기능을 수행하지만 형태를 다양하게 가질 수 있는 기법을 말한다

'JAVA' 카테고리의 다른 글

11.[JAVA] 메소드 오버로딩  (0) 2021.12.06
10.[JAVA] 클래스 기초  (0) 2021.11.25
8.[JAVA] 자바의 특징  (0) 2021.11.08
7.[JAVA] 제어문 (3)반복문 (for문)  (0) 2021.11.07
6.[JAVA] 제어문 (2)반복문 (while문, do while문)  (0) 2021.11.07