前言
在 Kotlin 中,可以使用 companion object 来创建静态变量。
companion object 中定义的属性和方法可以直接通过类名访问,就像 Java 中的静态成员一样。
静态属性
以下是一个示例:
1 2 3 4 5 6 7 8 9
| class MyClass { companion object { var myStaticVar: Int = 0 } }
val value = MyClass.myStaticVar
|
在这个示例中,myStaticVar 是 MyClass 的静态变量,可以通过类名直接访问。
静态方法
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| class MyApp : Application() { val TAG = "MyApp" companion object { lateinit var appContext: Context
fun readLoginUserInfo(){ val userInfo = ZSpProvider.getString( appContext, CommonData.userTag, "" ) if (userInfo != "") { CommonData.loginUser = Gson().fromJson(userInfo, UserModel::class.java) } else { CommonData.loginUser = UserModel(0, 0, 0) } } } override fun onCreate() { super.onCreate() appContext = baseContext readLoginUserInfo() } }
|