Notice
Recent Posts
Recent Comments
Link
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

WON.dev

chapter15_access_modifier 본문

JAVA/chapter01_JAVA_개념정리

chapter15_access_modifier

GAWON 2023. 5. 31. 18:14
1.1 정보은닉 (Information Hiding)
 - 불필요한 내부 정보는 숨기고, 필요한 정보만  노출 시킨다.
 - 불필요한 내부 정보는 대표적으로 "필드"이다.
 - 노출 시키는 정보는 대표적으로 "생성자", "메소드"이다.
 - 노출 여부 결정은 "접근 지시자"를 통해서 한다.
 - 접근 지시자(Access Modifier)의 종류
	1) public	 : 누구나 접근 가능 ★
	2) protected : 같은 패키지 내에서만 접근 가능 but 상속 관계의 다른 패키지 클래스 접근 가능
	3) default	 : 같은 패키지 내에서만 접근 가능
	4) private 	 : 같은 클래스 내에서만 접근 가능  ★

	종류		동일 클래스		하위 클래스		동일 패키지		외부 패키지
	private		O				X				X				X
	default		O				X				O				X
	protected	O				O				O				X
	public		O				O				O				O

 - 일반적으로  다음과 같이관리한다.
	1) 필드 	: private
	2) 생성자 : public
	3) 메소드 : public
	(부모 클래스를 상속받는 자식클래스가 있을때 부모의 접근 지시자보다 자식의 접근 지시자가 더 범위가 커질 수있다.(범위가 좁아지는건 안됨!))
	ex) 부모 클래스(default) - 자식 클래스(public) (O)
		부모 클래스(public) - 자식 클래스(protected) (X)

1.2 Getters & Setters
 - 필드를 private 처리하면 필연적으로 필드에 접근하기 위한 메소드가 필요하다.
 - 필드에 값을 저장하는 메소드들을 setter 라고 한다.
 - 필드의 값을 읽어오는 메소드들을 getter 라고 한다.
 - setter 규칙
	1) public void set필드명(매개변수){
			this.필드 = 매개변수;
	   }

	   boolean isKorean; 	★boolean 타입은 예외!! is를 뺴고 만든다.
	2) public void setKorean(boolean isKorean){
			this.isKorean = isKorean;

 - getter 규칙
	1) public 리턴타입 get 필드명(){
			return 필드명;
	   }

	   boolean isKorean; 	★boolean 타입에서는 get이 빠진다.
	2) public boolean isKorean(){
			return isKorean;
	   }
 - 이클립스는 setter 와 getter를 자동완성 해준다. (자동완성을 이용하자~~)
	1) 메뉴 - Source - Generate Getters and Setters
	2) 우클릭 - Source(Alt+Shift+S) - Generate Getters and Setters

'JAVA > chapter01_JAVA_개념정리' 카테고리의 다른 글

chapter17_abstract  (0) 2023.05.31
chapter16_polymorphism  (0) 2023.05.31
chapter14_package  (0) 2023.05.31
chapter13_inheritance_annotation  (0) 2023.05.31
chapter10_static final  (0) 2023.05.31