[英]Static initialisation block in Kotlin
從某種角度來看,Kotlin 中的companion object
相當於 Java 類的靜態部分。 特別是,它們在類第一次使用之前被初始化,這讓你可以使用它們的init
塊來替代 Java 靜態初始化器:
class C {
companion object {
init {
//here goes static initializer code
}
}
}
@voddan 這不是矯枉過正,實際上這就是 Kotlin 站點上的建議:“當加載(解析)相應的類時,會初始化伴隨對象,匹配 Java 靜態初始化程序的語義。” 對象表達式和聲明之間的語義差異
companion object {
// Example for a static variable
internal var REQUEST_CODE: Int? = 500
// Example for a static method
fun callToCheck(value: String): String {
// your code
}
}
類內的對象聲明可以用伴隨關鍵字標記。在此之下我們可以使用像java靜態方法和變量。比如類名.方法名或類名.變量名
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.