자바와 코틀린의 가시성 제어
자바의 접근제어
- public: 모든 곳에서 접근 가능
- protected: 같은 패키지 또는 하위클래스에서만 접근 가능
- default: 같은 패키지에서만 접근 가능
- private: 선언된 클래스 내에서만 접근 가능
코틀린의 접근제어
- public: 모든 곳에서 접근 가능
- protected: 선언된 클래스 또는 하위 클래스에서만 접근 가능
- 코틀린에서는 기본적으로 패키지를 namespace를 관리하기 위한 용도로만 사용한다. 가시성 제어에는 사용되지 않는다.
- internal: 같은 모듈에서만 접근 가능
- 코틀린에서는 default라는 접근제어자가 사라졌다.
- 여기서 말하는 모듈이란 한번에 컴파일 되는 kotlin 코드를 의미한다.
- IDEA Module
- Maven Project
- Gradle Source Set
- Ant Task <kotlinc>의 호출로 컴파일 파일의 집합
- private: 선언된 클래스 내에서만 접근 가능
- 자바의 기본 접근 지시어는 default 이지만, 코틀린의 기본 접근 지시어는 public이다.
코틀린 파일에서의 접근 제어
코틀린은 .kt 파일에 변수, 함수, 클래스 여러개를 바로 만들 수 있다.
코틀린 파일에서의 접근지시어로는,