UML 표기법
- - : private
- ~ : default
- # : protected
- + : public
- _ (속성이나 메서드 아래의 밑줄 표시) : 정적 멤버
public | 모두가 접근 가능 |
protected | 상속 / 같은 패키지 내의 클래스에서 접근 가능 |
[default] | 같은 패키지 내의 클래스에서 접근 가능 |
private | 본인만 접근 가능 |
- 상속을 받지 않았다면 객체 멤버는 객체를 생성한 후 객체 참조 변수를 이용해 접근해야 한다.
- 정적 멤버는 클래스명. 정적 멤버 형식으로 접근하는 것을 권장한다.
※ 정적 메소드 (static 메소드) 안에서는 객체 변수 접근이 불가능!!!!
public인 정적 변수 pubSt 접근 범위
ClassA | ClassA.pubSt | pubSt | this.pubSt | |
사용 가능 | 사용 가능 | 사용 가능 | ||
같은 패키지 | 상속한 경우 | 사용 가능 | 사용 가능 | 사용 가능 |
상속하지 않은 경우 | 사용 가능 | 사용 불가 | 사용 불가 | |
다른 패키지 | 상속한 경우 | 사용 가능 | 사용 가능 | 사용 가 |
상속하지 않은 경우 | 사용 가능 | 사용 불가 | 사용 불가 |
* 접근 범위 이해를 위한 예제:
oopinspring/workspace_springjava/Chap03/src/encapsulation01/packageOne/ClassB.java at master · expert0226/oopinspring
스프링 입문을 위한 (자바) 객체 지향의 원리와 이해. Contribute to expert0226/oopinspring development by creating an account on GitHub.
github.com
출저 : 스프링 입문을 위한 자바 객체 지향의 원리와 이해
728x90
'Java' 카테고리의 다른 글
[Java] RuntimeException (0) | 2025.05.03 |
---|---|
[Java] Queue의 add/offer, remove/poll, element/peek 의 차이 (0) | 2025.05.03 |
[Java] Map.Entry<K, V> / Map의 key, value 접근법 (0) | 2025.05.01 |
[Java] LinkedHashMap과 HashMap의 차이 (0) | 2025.05.01 |
[Java] 스택 - LinkedList / Deque / Stack (0) | 2025.05.01 |