kotlin 單例、靜態方法、常量
阿新 • • 發佈:2022-11-30
一、object
使用 object 關鍵字定義一個單例類,通過單例類,去呼叫方法,這種方法也不叫靜態方法,但是可以當作靜態方法呼叫
/** * object * 天生單例 * 1 並不用語法上面初始化 * 2 不需要構造方法 */ object Constants {
//常量 const val tag: String = "ccc" var host: String = "127.0.0.1" private var port: String = "8080" //非靜態方法,可當靜態方法使用 fun doSomething(){ } }
Constants.doSomething()不是單例方法,可當單例方法使用
二、伴生物件
使用 companion object 為一個類建立一個伴生類,然後呼叫這個伴生類的方法,這個方法不叫靜態方法,但是可以當作靜態方法呼叫
class Dog(name: String, var age: Int) : Animal(), LoadingListener { /** * 伴生物件 static靜態方法和靜態變數 */ companion object { const val tag1: String = "aaa" privatevar tag2: String = "bbb" fun getName(): String { return tag2 } } } Dog.getName()
真正的靜態方法
1、使用 @JvmStatic 註解
2、頂層方法