객체 지향 프로그래밍(Object Oriented Programming)4 - 캡슐화(Encapsulation)
2021. 10. 30. 16:06ㆍJava
캡슐화
- 관련 있는 변수와 메서드를 하나의 클래스로 묶어, 외부에서 접근하지 못하도록 정보를 은닉하는 것
- 객체에 대한 직접적 접근을 막음
- 내부의 정보를 직접 접근 혹은 변경 불가
- 공개되는 메서드를 통해서만 접근이 가능 - getter, setter
//정보를 은닉하기 위해 캡슐회
class Book{
private String title;
private int price;
//title을 얻을 수 있는 getter
public String geteTitle(){
return this.title
}
//title을 변경할 수 있는 setter
public void setTitle(String title){
this.title = title;
}
//price의 getter setter는 생략
}
Java의 접근 제한자(modifier)
클래스, 변수, 메서드 선언부에 사용되며, 해당 요소를 외부에서 사용할 수 있는지 설정
- public - 같은 클래스, 같은 패키지, 다른 패키지의 자손 클래스, 전체
- protected - 같은 클래스, 같은 패키지, 다른 패키지의 자손 클래스
- package(default) - 같은 클래수, 같은 패키지
- private - 같은 클래스
출처
'Java' 카테고리의 다른 글
객체 지향 프로그래밍(Object Oriented Programming)5 - 다형성(Polymorphism) (0) | 2021.10.30 |
---|---|
객체 지향 프로그래밍(Object Oriented Programming)3 - 상속(Inheritance) (0) | 2021.10.30 |
객체 지향 프로그래밍(Object Oriented Programming)2 - 추상화(Abstraction) (0) | 2021.10.26 |
객체 지향 프로그래밍( Object Oriented Programming)1 (0) | 2021.10.26 |