728x90
Kotlin은 Java와 마찬가지로 Package 개념을 사용한다.
Java에서 그러하듯이 Kotlin에서도 source 파일은 package 선언으로 시작한다.
이에 따라 source 파일 내 class나 function들과 같은 contents들은 package 를 통해 표현이 가능한데, 예를 들어 아래의 baz() 는 foo.bar.baz로, Goo 는 foo.bar.Goo 로 표현이 가능하다.
package foo.bar fun baz() {} class Goo {}
Package가 명시되지 않았다면 해당 파일의 content들은 이름이 없는 "default" package에 포함되었다고 보면 된다.
Default Imports
많은 수의 package들이 기본으로 모든 kotlin 파일에 import 된다.
kotlin.* kotlin.annotation.* kotlin.collections.* kotlin.comparisons.* (since 1.1) kotlin.io.* kotlin.ranges.* kotlin.sequences.* kotlin.text.*
Target platform에 따라 추가 package들이 import 되기도 한다.
JVM: java.lang.* kotlin.jvm.* JS: kotlin.js.*
Imports
default import와 별개로, 각 파일들은 자체 import 구문을 가질 수 있다.
먼저 아래와 같이 명시적인 하나의 이름을 import 할 수있다.
import foo.Bar
혹은 * 을 통해 범위에 있는 모든 content(package, class, object)들을 import 할 수도 있다.
import foo.*
import 를 하다보면 아래와 같이 동일 이름의 content로 인해 충돌이 날 수도 있다.
import foo.Bar import bar.Bar
이럴 경우에는 as 구문을 이용해 rename을 할 수 있다.
import foo.Bar import bar.Bar as bBar
import keyword는 class를 import 하는데에 국한되지 않고, 다음과 같은 declaration들도 import 할 때 사용가능하다.
- top-level functions and properties
- functions and properties declared in object declarations
- enum constants.
728x90
'Language > Kotlin' 카테고리의 다른 글
Kotlin - when expression (0) | 2018.07.23 |
---|---|
Kotlin - if expression (0) | 2018.07.17 |
Kotlin - Control Flow (제어 흐름) (0) | 2018.07.17 |
Kotlin - Kotlin on Android (Android Studio for Windows) (0) | 2018.07.16 |
Kotlin - Kotlin on JVM (the IntelliJ IDEA Community Edition for Windows) (0) | 2018.07.12 |
Kotlin - Strings (문자열) (0) | 2018.07.11 |
Kotlin - Arrays (배열) (0) | 2018.07.11 |
Kotlin - Booleans (0) | 2018.07.11 |