Kotlin - 프로퍼티, 접근제한자
프로퍼티
클래스의 속성을 사용할 때는 멤버에 직접 접근하며 이를 프로퍼티라고합니다.
아래 코드에서 Pserson 클래스는 name 프로퍼티를 가지고 있습니다. 프로퍼티에 값을 쓰려면 = 기호로 값을 대입합니다. 값을 읽을때는 프로퍼티를 참조합니다.
//클래스 선언
class Person(var name:String){
}
//인스턴스 생성
val person =Person("멋쟁이")
person.name ="키다리" // 쓰기
println(person.name) //읽기
자바로 작성된 클래스의 게터/세터 메소드는 코틀린에서 사용할 때 기존의 게터/세터를 사용할 수 있고 프로퍼티로 사용할 수도 있습니다.
자바에서는 private 접근지정자로 은닉화된 멤버 변수에 게터/세터 메소드를 사용해서 접근하는 방식이 일반적입니다. 코틀린은 프로퍼티가 게터/세터를 대체합니다.
접근 제한자
접근 제한자란 변수나 함수를 공개하는 데 사용하는 키워드입니다.
- public (생략가능) : 전체 공개입니다. 아무것도 안쓰면 기본적으로 public 입니다.
- private : 현재 파일 내부에서만 사용할 수 있습니다.
- internal : 같은 모듈 내에서만 사용할 수 있습니다.
- protected :상속받은 클래스에서 사용할 수 있습니다.
class A{
val a=1 // public
private val b=2
protected val c=3
internal val d=4
}
안드로이드 스튜디오의 프로젝트는 app모듈을 기본 제공해 여기서 앱을 만듭니다.
보통은 기본 app 모듈만 사용하지만 사실 여러 모듈을 생성할 수 있습니다. 예를 들어 같은
프로젝트에 스마트폰용, 시계용, TV용 안드로이드 앱을 만든다면 모듈 3개를 생성합니다.
internal은 이 모듈 간 접근을 제한하는 키워드입니다.
'Kotlin' 카테고리의 다른 글
Kotlin - 인터페이스 (0) | 2019.01.03 |
---|---|
Kotlin - 클래스의 상속, 내부 클래스, 추상 클래스 (0) | 2019.01.03 |
Kotlin - 클래스 (0) | 2019.01.03 |
Kotlin - 제어문 (0) | 2019.01.03 |
Kotlin - 기본 자료형,배열 (0) | 2019.01.03 |
댓글