(Kotlin) 접근 제한자에 대해(public, private...)

ANKT·2021년 12월 5일
0
post-thumbnail

안녕하세요

😀 저의 두번째 글이네요. 이 글에서는 접근 제한자에 대해 적을 예정이에요.


접근 제한자란?

접근 제한자는 객체가 공개 되어야 하는 범위를 정해주는 역활을 하는 것 인데요. 만약 자바를 알고 있으시면 접근 제한자(Access Modifier)라는 것이 어색하지 않으실 겁니다.

코틀린에서는 Visibility Modifier로 사용을 하고 있고 이것이 가시성 수정자 라는 것 보다 접근 제한자가 조금 더 친숙해 접근 제한자로 표현을 하였습니다.


여기서 Visibility Modifier란?

Visibility Modifer를 쉽게 말 하면 '공개를 어느 정도로 할 것인지' 라고 생각하시면 편합니다.


코틀린 접근 제한자에 종류

접근 제한자에 종류는 4가지가 있습니다.

1. Private
2. Public
3. Protected
4. inrenal

Private해당 파일이나 클래스에서만 사용을 가능하게 합니다.

Public 어디에서나 접근을 할 수가 있고, 만약 함수나 클래스 앞 아무것도 붙이지 않으면 디폴트로 지정이 되어서 따로 붙일 필요가 없습니다.

Protected은 상속받는 인터페이스, 클래스 또는 자식 클래스에서 접근이 가능합니다.

Internal은 코틀린에서 새롭게 추가된 접근 제한자이고, 같은 모듈 안 에서는 다 접근이 가능 합니다.


코드 예제

// JaeHyeon_file.kt

private fun jae() { } //JaeHyeon_file.kt 에서만 접근이 가능합니다.

public var phone: Int = 12 // 어디에서나 접근이 가능합니다.

internal val book = 1 // 같은 모듈 안에서만 접근이 가능합니다.

class Hi {
	protected val a = 1  //클래스 내부, 상속받는 객체에서 접근이 가능합니다
}

봐주셔서 감사합니다 🤗

profile
Law of Attraction

0개의 댓글