데이터 은닉이 필요한 이유?
외부로부터 데이터 변질이 되는 것을 막기위해 , 속성값들은 private 클래스를 이용해 내부에서만 사용 가능하며 , 외부에서 접근 가능한 메서드를 제공해 실제 데이터를 변경시켜줍니다.
멤버변수를 Private 설정을 해줌으로써 , 외부로부터의 데이터 변질을 방지합니다.
-
private : 자기 클래스 내부의 메서드에서만 접근 허용합니다.
-
protected : 자기 클래스 내부 또는 상속받은 자식 클래스에서 접근 허용합니다.
-
public : 모든 접근을 허용합니다..
package lession13_OOP_Encapsulation;
// 캡슐화(encapsulation)
// 데이터의 안전한 처리를 위해
public class Dog {
private String name;
private int age; // 외부의 직접 접근을 막고
public Dog() {
// TODO Auto-generated constructor stub
}
public Dog(String name, int age) {
super();
this.name = name;
this.age = age;
}
////////////////////////
// 변수에 접근할 수 있는 안전한 통로
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
if (age < 0) {
age *= -1;
}
this.age = age;
}
/////////////////////////
public void print() {
System.out.println(name);
System.out.println(age);
}
}
'Language > Java' 카테고리의 다른 글
14. Java 인터페이스와 다형성 (0) | 2020.03.08 |
---|---|
13. Java 상속 (0) | 2020.03.07 |
11. Java Static 과 패키지 (0) | 2020.03.06 |
10. Java 생성자와 소멸자 그리고 This (0) | 2020.03.06 |
9. Java 메서드 (0) | 2020.03.06 |