#Java Encapsulation
#Encapsulation
중요한 데이터나 복잡한 구현을 숨기고, 사용에 꼭 필요한 기능만을 공개하여 정의하는 기법
-중요하거나 상세한 구현은 숨긴다 (private)
-접근에 필요한 기능만을 public 하게 공개한다.
-set..(), get...()을 통해 접근한다
-data :private
-method:public
중요한 데이터의 은닉과 보고
복잡하고 상세한 구현을 숨김
#getter, setter
캡슐화의 사용 도구이다.
우선 사용하는 가장 큰 이유는 직접 접근이 불가능하게 하기 위함이다.
ex) cc.num =123 같은 경우에는 잘못된 데이터가 들어와도 거를수가 없다
getter와 setter 를 이용하면 if문으로 조건을 확인하고 수행할 수있다.
Source 에서 자동으로 추가가 가능하니까 그렇게 사용하면 된다.
public void setNum(int num) {
if(num>0) {
this.num = num; //0보다 큰 값만 num에 저장.
}else {
System.out.println("잘못된 값 입니다");
}
}
캡슐화를 하는 이유를 아는게 중요하다.
get , set 방식을 사용해도 데이터에 저장이 가능하고 접근이 가능하다.
그래도 캡슐화를 하는 이유는, 들어오는 데이터에 직접 접근하지 못하게 하기 위함인데 잘못입력된 값이 들어왔을때는 바로 저장하는게
아니라 한번 더 제한 조건을 줄수있도록 한다.
'JAVA > JAVA 기본 문법' 카테고리의 다른 글
[JAVA]-Java Reference Type Casting (0) | 2019.01.19 |
---|---|
[JAVA]-Java 상속 (0) | 2019.01.19 |
[JAVA]-Java #접근수식어 (접근지정자, 접근 제한자) (0) | 2019.01.19 |
[JAVA]-Java #Method Overloading (0) | 2019.01.19 |
[JAVA]-Java 클래스 생성자 (0) | 2019.01.19 |