본문 바로가기
Kotlin

Kotlin - 프로퍼티, 접근제한자

by 봄석 2019. 1. 3.

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

댓글