접근 지정자
>>>클래스의 접근 지정자<<< 는 2가지 경우가 있다.
public 과 default
1. public
-> public으로 선언된 클래스는 어떤 다른 클래스에서도 사용할수 있다.
2. default
-> 접근 지정자를 생략하면은 default 접근 지정자로 자동 선언 되는되, 이 경우는 같은 패키지 내에 있는
클래스들만 접근이 가능하다.
>>>멤버 접근 지정자<<< 는 4가지 경우가 있다.
default, private, protected, public
1.public 멤버
->패키지의 내부, 외부 등 모든 클래스에서 접근이 가능하다.
2. private 멤버
-> 비공개를 의미함.
-> 같은 클래스 내부 멤버에 의해서만 접근이 가능. 어떤 다른 클래스에서도 접근할수 없다.
-> 동인 패키지내의 다른 클래스더라도 접근이 불가능하다.
3. protected 멤버
-> 보호된 공개를 의미함.
-> 같은 패키지 내의 모든 클래스에서 접근이 가능.
-> 다른 패키지의 클래스더라도 이 클래스를 상속받은 자식일 경우는 접근이 가능.
4. default 멤버
-> 접근 지정자 선언이 생략될 경우, default로 선언되었다고 함
-> 동인한 패키지 내에 있는 모든 클래스에서 접근가능.
ex)
class Sample{
public int a; <- public 멤버
protected int b; <- protected 멤버
private int c; <- private 멤버
int d; <- default 멤버
}