정보 은닉
- 접근 제한자 이용
- 장점
- 개발자의 의도대로 사용자가 사용하게끔 함(개발 안정성)
- 외부에 공개하면 안 되는 class를 숨길 수 있음(사용자 편리성)
접근 제한자
- 접근 범위 순위
- public: 모든 클래스에서 쓸 수 있음
- protected: package와 동일, 같은 패키지 안에 있는 클래스에서 사용 가능, but, 다른 패키지에서 상속하면 사용 가능, 어떤 메서드를 오버라이딩 할 것을 추천해 줄 때도 사용
- package: 클래스를 하나의 폴더처럼 분류할 때 쓰임, 폴더명은 보통 레벨 3으로 나눠서 이름에 씀(집단이름.프로젝트.분류), 프로젝트 폴더에 자동으로 인식 및 분류해서 폴더 생성, 같은 패키지 안에 있는 클래스에서 사용 가능, 외부 클래스에서는 private으로 바뀜
- private: 자기 내부 클래스에서만 쓸 수 있음
- 다른 클래스의 private 멤버를 사용하는 방법: member field를 private으로 막아 놓고, private field를 사용하는 method를 제공해 줌
멤버 변수
- Class 안에 있는 변수, instance가 생성될 때 만들어짐(new)
- instance는 모든 reference가 사라질 때 같이 사라짐
지역 변수
- method 안에 있는 변수, method가 실행될 때 만들어짐
- method의 실행이 끝나면 자동으로 사라짐
'자바 - Java > 이론' 카테고리의 다른 글
[Java] Java Programming - static 변수, static 메서드 (0) | 2020.04.02 |
---|---|
[Java] Java Programming - 생성자(Constructor) (0) | 2020.04.02 |
[Java] Java Programming - 객체 지향, 클래스 (0) | 2020.04.02 |
[Java] Java Programming - 참조 호출(Call by reference), 값 호출(Call by value), 가변 인자 매개 변수, Method Overloading (0) | 2020.04.02 |
[Java] Java Programming - 메서드, String 자료형 메서드 종류 (0) | 2020.04.02 |