캡슐화와 접근제어자, getter&setterJava2022. 12. 4. 14:42
Table of Contents
728x90
728x90
캡슐화
- 연관된 목적을 가지는 변수, 함수를 하나의 클래스로 묶어 외부에서 쉽게 접근하지 못하도록 은닉하는 것
- 외부에서 내부 정보에 접근, 변경을 불가능하도록 처리하고 해당 객체가 제공하는 필드와 메서드를 통해 접근이 가능
- 객체 정보 손상과 오용을 방지하고 데이터가 변경되어도 다른 객체에 영향을 주지 않는다
- 캡슐화는 접근제어자를 통해 이루어진다
접근제어자
- public : 접근의 제한이 없음
- protected: 동일한 패키지 내에 존재하거나 상속받은 클래스에서 접근 가능
- default : 동일한 패키지 내에서만 접근 가능 / 아무런 명시가 없다면 디폴트값
- private : 해당 클래스 내에서만 접근 가능
Getter & Setter
- 객체를 외부에서 읽고 변경하게 되면 객체의 무결성(변하지 않는 형태)이 깨질 수 있음
- getter&setter 메서드를 통해 데이터를 받거나 변경
public class member {
// private로 선언해 놓았기 때문에 member클래스 내에서만 접근 가능
private String id;
private String pw;
private int age;
//getter
public String getId() {
return id;
}
public String getPw() {
return pw;
}
public int getAge() {
return age;
}
//setter
public void setId(String id) {
this.id = id;
}
public void setPw(String pw) {
this.pw = pw;
}
public void setAge(int age) {
this.age = age;
}
}
// 접근을 위해 getter & setter 활용
// 입력=set , 가져올 때=get을 사용
728x90
300x250
@mag1c :: 꾸준히 재밌게
2023.04 ~ 백엔드 개발자의 기록
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!