데이터 캡슐화(Data Encapsulaton)

2025. 3. 28. 09:38JAVA/JAVA 기초 문법

💊 데이터 캡슐화란?

객체지향 프로그래밍(OOP)의 핵심 개녕 중 하나로,

데이터를 직접 접근하지 못하도록 보호하고, 필요할 때 메서드를 통해 접근하도록 제한

"정보 은닉(Informaton Hiding)"을 통해 보안성과 유지보수성을 높임

객체 내부의 데이터를 보호하고, 외부에서 변경할 때 통제할 수 있는 방법 제공

 

💾 데이터 캡슐화의 장점

1. 데이터 보호 (Data Protection)

  • private 키워드를 사용하여 직접적인 데이터 접근 차단
  • Getter/Setter를 통해 필요한 경우에만 데이터를 수정 가능하도록 제한

2. 데이터 무결성 유지 (Data Integrity)

  • Setter 메서드에서 유효성 검사를 추가하여 잘못된 데이터가 저장되지 않도록 함

3. 유지보수 용이 (Maintainability)

  • Getter/Setter를 통해 데이터에 접근하면, 유지보수가 쉬워짐
  • 변경이 필요하면 Getter/Setter의 로직만 수정하면 됨

4. 보안성 증가 (Security)

  • 데이터를 private로 숨기고, 필요한 경우에만 특정 메서드를 통해 변경 가능하도록 제한
  • Setter를 제공하지 않으면 해당 데이터를 읽기 전용(read-only)으로 만들 수 있음

5. 코드 재사용성 증가 (Reusability)

  • Getter/Setter를 활용하면 같은 로직을 여러 곳에서 재사용 가능

6. 객체의 일관성 유지 (Consistency)

  • 관련된 데이터는 하나의 메서드에서 함께 변경하도록 설계

🎯 결론 🎯 

데이터 캡슐화는 데이터(변수)를 숨기고, 특정 메서드를 통해 접근을 제한하는 개념
이를 통해 데이터 보호, 무결성 유지, 유지보수 편의성, 보안성, 일관성 유지 등의 장점을 얻을 수 있음
객체지향 프로그래밍(OOP)의 필수 개념 중 하나이며, 유지보수성과 안정성을 높이는 핵심 원칙

'JAVA > JAVA 기초 문법' 카테고리의 다른 글

Parameter와 Argument  (0) 2025.04.02
Method  (0) 2025.04.01
Expression 과 Statement  (0) 2025.03.28
아스키코드 유니코드  (0) 2025.03.28
Data type  (0) 2025.03.28