Android/Kotlin
First-class citizen (1급객체)
lipnus
2019. 2. 1. 14:44
반응형
First Class Citizen(1급 객체)
1급객체의 조건 3가지
- 변수나 데이타에 할당 할 수 있어야 한다.
- 객체의 인자로 넘길 수 있어야 한다.
- 객체의 리턴값으로 리턴 할수 있어야 한다.
1.변수나 데이터에 할당할 수 있어야 한다
object Main {
@JvmStatic
fun main(args: Array<String>) {
val a = test
}
val test: () -> Unit = { println("kotlin") }
}
2.객체의 인자로 넘길 수 있어야 한다
object Main {
@JvmStatic
fun main(args: Array<String>) {
function(test)
}
fun function(f: () -> Unit) {
f.invoke()
}
val test: () -> Unit = { println("kotlin") }
}
3.객체의 리턴값으로 리턴할 수 있어야 한다
object Main {
@JvmStatic
fun main(args: Array<String>) {
function()
}
fun function(): () -> Unit {
return { println("kotlin") }
}
}
반응형