Kotlin 접근 제한

Kotlin 접근 제한자

 객체가 가지고 있는 변수는 "." 연산자를 통해 자유롭게 접근이 가능하다.
 접근 권한을 설정해 오동작하는 것을 사전에 막을 수 있게 한다.

 Kotlin에서는 클래스의 정의한 모든 변수는 기본적으로 private 로 설정된다. 모든 변수는 직접적인 접근이 불가능하다.

 따라서, getter를 통해서 접근할 수 있도록 한다.

 Java 의 경우에는 . 을 통해서 접근 가능하다. Kotlin 에서는 . 이 자연스럽게 getter로 변환해서 접근한다.

클래스 접근 제한자

  • private : 외부에서 객체를 생성 할 수 없다.
  • public : 외부에서 객체를 생성 할 수 있다. (기본)
  • internal : 같은 모듈일 경우에만 객체를 생성할 수 있다.
  • protected : 클래스에 지정할 수 없다.

protected 는 클래스에 지정하면 아래와 같은 에러가 발생한다.
Modifier 'protected' is not applicable inside 'file'

private 클래스를 외부에서 참조할려면 아래와 같은 에러가 발생한다.
Cannot access 'TestFile': it is private in file



변수, 메서드 접근 제한자

  • private : 외부에서 접근할 수 없다.
  • public : 외부에서 접근이 자유롭다. (기본)
  • internal : 모듈이 같을 경우에만 접근이 가능하다.
  • protected : 상속 관계일 경우에만 접근이 가능하다.

개발자가 자유롭게 접근해서 값을 변경하는 것을 막기 위해서 프로그램의 오동작을 막기 위한 중요한 수단이다.








댓글

이 블로그의 인기 게시물

Intel® HAXM installation failed 해결하기

Kotlin Interface

Kotlin this, super