제한자

    Kotlin Class Member 가시성 변경자 : public, internal, protected, private 의 차이

    목표 클래스 멤버의 가시성 변경자에 대해 이해한다. 클래스 멤버의 가시성 변경자 Kotlin은 클래스 내부에 클래스 멤버(class, fun, val, var)를 선언하고 외부에 변수를 참조하게 만들 수 있다. 하지만, 모든 클래스 멤버들이 외부에서 가시적이라면 클래스에 대한 무분별한 참조가 일어나 캡슐화가 깨질 수 있다. 이러한 상황을 방지하기 위해 클래스 멤버들에는 가시성 변경자를 설정할 수 있도록 한다. 클래스 멤버에 설정 가능한 가시성 변경자는 4가지이다. public : 모든 곳에서 접근 가능 internal : 모듈 내부에서만 접근 가능 protected : 해당 클래스 멤버가 포함된 클래스를 상속받는 클래스에서 접근 가능 private : 같은 클래스 내부에서만 접근 가능 Internal :..

    Kotlin 최상위 선언에서 가시성 변경자 : public, internal, private

    목적 최상위 선언의 가시성 변경자에 대해 이해한다. internal 가시성 변경자에 대해 이해한다. 최상위 선언에서의 가시성 변경자 최상위 선언에서는 3가지의 가시성 변경자를 쓸 수 있다. public : 기본 가시성 변경자이다. 모든 곳에서 접근 가능하다. internal : 같은 모듈 안에서만 접근 가능하다. Kotlin의 특별한 접근자로, 이 접근자를 통해 모듈화가 수월해진다. private : 같은 파일(.kt)안에서만 접근 가능하다. 최상위 선언에는 여러 class와 메서드(fun), 변수(val, var)이 들어갈 수 있는데, private으로 선언되었다면 같은 파일 안에서는 언제나 접근 가능하다. 아래에서 internal과 private 접근 제한자에 대해 살펴보자 Internal 접근 제한..