[JAVA] 데이터 추상화 vs 제어 추상화
·
Java
“추상화”라는 단어는 어렵게 들리지만, 사실 우리가 매일 쓰는 객체지향의 핵심 개념 중 하나입니다.자바에서 추상화는 복잡한 세부사항을 숨기고 필요한 정보만 노출하는 것을 의미합니다.이번 글에서는 데이터 추상화와 제어 추상화의 차이, 그리고 자바에서 이들이 어떻게 구현되는지를 살펴보겠습니다. 추상화란 무엇인가?복잡한 현실 세계를 단순화해서 모델링하는 과정“무엇을 한다”와 “어떻게 한다”를 분리하는 것자바에서는 클래스, 인터페이스, 접근제어자를 통해 표현됨abstract class Animal { abstract void makeSound();}데이터 추상화 (Data Abstraction)데이터의 내부 구조를 숨기고, 필요한 정보만 외부에 노출하는 방식주로 캡슐화(encapsulation) 와 함께 ..