본문 바로가기
Programming/JAVA(eclipse)

java 9일차 _03. 접근지정자

by yoon9i 2024. 3. 20.

3. 접근지정자( access modifier )
1) 용도: 클래스들간의 접근(참조)을 제한하는 방법.
2) 4가지 레벨

UML표기법                             (+)                (#)                                   (-) 
                                           public          protected       (default)      private
-----------------------------------------------------------------------------------------------
같은클래스인경우 :             가능               가능             가능          가능
같은패키지의 다른클래스:  가능               가능             가능           불가
다른패키지의 상속관계:     가능                가능            불가            불가
다른패키지의 다른클래스:  가능                불가            불가            불가

 

1. 같은패키지의 다른클래스

package exam14_접근지정자1_같은패키지;

public class Super {
	// 같은패키지의 다른클래스
	
	public 	  int n1 = 10;
	protected int n2 = 20;
	          int n3 = 30;
	private   int n4 = 40;
	
	
}
package exam14_접근지정자1_같은패키지;

public class Sub extends Super {
	// 같은패키지의 다른클래스
	
	private int m = 100;
	
	public void info() {
		System.out.println("public: " + n1);
		System.out.println("protected: " + n2);
		System.out.println("(default): " + n3);
//		System.out.println("pritvate: " + n4); // 같은 클래스내에서만 가능
		System.out.println("pritvate: " + m);
	}
	
	
}

 

2. 다른패키지의 상속관계

package exam14_접근지정자2.parent;

public class Super2 {
	// 다른패키지의 상속관계
	public 	  int n1 = 10;
	protected int n2 = 20;
	          int n3 = 30;
	private   int n4 = 40;
}
package exam14_접근지정자2.child;

import exam14_접근지정자2.parent.Super2;

public class Sub2 extends Super2 {
	// 다른패키지의 상속관계
	private int m = 100;
	
	public void info() {
		System.out.println("public: " + n1);
		System.out.println("protected: " + n2);
//		System.out.println("(default): " + n3); // default 는 같은 패키지내에서만 가능
//		System.out.println("pritvate: " + n4); // 같은 클래스내에서만 가능
		System.out.println("pritvate: " + m);
	}
}

 

'Programming > JAVA(eclipse)' 카테고리의 다른 글

java 9일차 _ 04. 추상클래스(2)  (0) 2024.03.20
java 9일차 _04. 추상클래스  (0) 2024.03.20
java 9일차 _02. Object 의 toString( )  (0) 2024.03.20
java 9일차 _01. 다형성  (0) 2024.03.20
java 9일차 _ 8일차 리뷰  (0) 2024.03.20