728x90
반응형
[Error Note] 9. The field - is not visible : 접근 제어 지시자 오류
은행 계좌의 정보를 저장하는 클래스, Bank.
Bank 클래스 내에 bank1이라는 객체를 생성한 뒤,
name/balance라는 속성 내에 "우리은행"(String)/100,000이라는 값을 초기화했다.
그런데 bank1.name을 초기화하던 중 컴파일 에러가 발생했다.
에러 문구는 다음과 같다.
The field Bank.name is not visible
Bank 클래스 내부의 name을 쓸 수 없다는 뜻이다.
Bank 클래스 파일 내부로 가서, 속성 name을 살펴보자.
Bank 클래스 내부를 잘 살펴보면, 변수 name의 접근 제어 지시자가 private으로 설정되어 있다.
private은 접근 제어 지시자의 한 종류로, 해당 클래스 파일 내에서만 변수/함수/메서드를 쓸 수 있게 한다.
한마디로, bank1.name을 초기화했던 BankTest 파일 내에서는 사용이 안 된다는 말이다.
방법은 간단하다.
(1) Bank 클래스 파일 내부에서 bank1를 선언, bank1.name을 초기화하거나
(2) String name 앞의 private을 지우면 해결된 것을 볼 수 있다.
728x90
반응형