JAVA 기초3 - 접근제어
접근제어
접근제어란?
: 메모리를 보유한 객체를 이용해서 멤버에 점(.)찍고 접근할 수 있는지 없는지를 결정한다.
접근제어의 종류
- 객체를 이용한 멤버의 접근제어
- 상속관계에서 상위 클래스와 하위 클래스간의 접근제어
접근 지정자(Access Identifier)의 종류
private
public
protected
☞ 멤버 변수나 메서드가 public으로 설정되어 있으면, 메모리를 보유한 객체에서 점(.)을 찍고 접근할 수 있다. 그러나 private으로 설정되어 있으면 점(.)을 찍고 접근할 수 없다.
/*
* public, private 접근 테스트
*/
public class MemberVo {
public String id;
public String name;
private String password;
}
public class Main {
public static void main(String[] args){
MemberVo vo= new MemberVo ();
vo.id = "testUser01"; // public 멤버접근
vo.name = "홍길동"; // public 멤버접근
vo.password = "홍길동:" // private 멤버접근 에러
}
}
private에 접근하는 방법
public 멤버 메서드의 매개변수를 통해서 private 멤버에 값을 할당
public 멤버 메서드의 리턴(Return)을 통해서 private 멤버의 값 내보내기
☞ eclipse(STS,egovFramework) 메뉴에서 source à generate getters and setters..
(단축키 ALT+SHIFT+S+R)를 통해서 private로 선언된 멤버변수에 getters와 setters를 생성할 수 있습니다.
public class MemberVo {
private String password;
public String getPassword() { // private에 접근하는 public 메소드
// return을 이용해서 외부로 값을 노출
return password;
}
public void setPassword(String password) { // private에 접근하는 public 메소드
// 매개변수의 값을 멤버 변수로 값복사
this.password = password;
}
}
private 멤버변수의 사용
- 자료보호
- 내부적 사용
2020/11/11 - [개발/자바] - JAVA 기초2 - 자바 프로그램의 실행구조와 JVM