kotlin
[코틀린] Kotlin : packages
iosroid
2019. 12. 31. 12:18
코틀린(kotlin) 의 패키지를 살펴보자.
원문 https://kotlinlang.org/docs/reference/packages.html 을 보며 정리.
kotlin 파일에 있는 모든 내용 (함수, 클래스 등등) 이 패키지가 된다.
패키지로 지정을 안하면 이름없는 기본 패키지가 된다.
packages
패키지의 이름은 패키지내 소스파일 위에 package 뒤에 넣는다.
package my.package
import
패키지의 내용을 가져다 쓸때는 import 를 사용한다.
import my.package
// import my.*
// import my.package
// import my.package as my
IntelliJ IDEA 에서 package 생성
IDE 를 사용해보자.
project 트리에서 마우스 오른쪽 버튼 항목에서 package 를 선택하고 이름을 선택해주면 알아서 만들어 준다.
src 폴더에 'dummy' 패키지를 만들고 그 안에 'head' 패키지를 만들었다.
package 가 자동으로 입력된 빈 파일이 생긴다.
단순하게 코드를 넣어 실행해 보자.
// hello.kt
import dummy.*
fun main() {
println("hello kotlin")
dummy.packageName()
dummy.head.packageName()
}
// dummy/test.kt
package dummy
fun packageName() {
println("my name is dummy")
}
// dummy/head/head.kt
package dummy.head
fun packageName() {
println("my name is dummy.head")
}
실행:
import other declarations
import 키워드로 클래스 외에도 아래의 것에 쓸 수 있다.
- top-level functions and properties;
- functions and properties declared in object declarations;
- enum constants.
// package.kt
enum class Dummys {
ONE, TWO, THREE
}
// main.kt
import package.Dummys
val a = package.Dummys.ONE
private
private 속성을 가지면 package 파일 외부에서 접근이 안된다.
참고 : Visibility Modifiers
// dummy/head/head/kt
private fun packageProperty() {
println("I'm private")
}
// hello.kt
dummy.head.packageProperty() // error!