Error Note

[Error Note] 9. 접근 제어 지시자 오류 : The field - is not visible

Song hyun 2024. 4. 20. 10:36
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
반응형