접근제어 지시자를 사용하는 이유
사용자의 접근을 제한하여 시스템의 오류의 가능성을 차단 하는 것이다.
예를들어 스피커의 볼륨 수치의 최대수치가 제한되어 있는것
애플, 삼성의 스마트폰등의 제품을 분해를 규정상 차단하는것 = 사용자의 접근을 제한한다.
C++의 접근제어지시자
public
맴버에 관한 모든 외부 접근이 허용
private
외부 접근뿐만 아니라 파생 클래스로부터의 접근까지 모두 차단, 클래스를 선언할 때 별도로 접근제어 지시자를 기술하지 않으면 private로 간주됨
protect
맴버에 관한 모든 외부 접근이 차단됨 단 , 상속 관계에 있는 파생 클래스에서의 접근은 허용.
private 로 멤버변수의 접근은 차단되었지만 메서드를 이용하여 변수의 값을 변경할 수 있도록 할 수 있다.
즉 예를 들어 설명하면 TV볼륨을 제어버튼이나 리모콘을 사용하지 않고 변경하는 것을 막은것과 같다.
"맴버 함수에 경우에는 private 맴버에 접근하는 것이 자유롭다."
생성자 함수가 private 처리가 되면 객체생성시 접근 오류가 발생한다. 주의 할 것
하지만 객체생성을 제어할 목적으로 사용될 수 있다.
'자바' 카테고리의 다른 글
Java - 객체지향 - 캡슐화 (0) | 2023.12.10 |
---|---|
Java - 객체지향 - 상속 (1) | 2023.12.10 |
Java - 객체 지향 개요 (0) | 2023.12.10 |
참조 형식 멤버 초기화 (0) | 2022.09.24 |
생성자와 소멸자 (2) | 2022.09.20 |