| 제어자 | 같은 클래스 | 같은 패키지 | 자손 클래스 | 전체 |
|---|---|---|---|---|
| public | 0 | 0 | 0 | 0 |
| protected | 0 | 0 | 0 | |
| default | 0 | 0 | ||
| private | 0 |
- private : 같은 클래스 내에서만 접근이 가능하다.
- default : 같은 패키지 내에서만 접근이 가능하다.
- protected : 같은 패키지 내에서, 그리고 다른 패키지의 자손클래스에서 접근이 가능하다.
- public : 접근 제한이 전혀 없다.
- 이클립스 Getter & Setter 자동 선언 방법 -
- Source --> Generate Getter & Setter
class Encapsule {
private String name;
private int age;
public String getName() {
return name;
}
public int getAge() {
return age;
}
public void setName(String name) {
this.name = name;
}
public void setAge(int age) {
if (age < 0) System.out.println("나이 입력오류 ㅎㅎㅎㅎ");
else this.age = age;
}
}
public class EncapsuleEx {
public static void main(String[] args) {
Encapsule encapsule = new Encapsule();
// encapsule.name = "홍길동"; // 멤버변수가 private여서 그냥은 못바꿈
encapsule.setName("홍길동"); // 그래서 setter와 getter를 쓰는 것
encapsule.setAge(-10);
System.out.println("이름 : " + encapsule.getName());
System.out.println("나이 : " + encapsule.getAge());
}
}