Android中使用Kotlin开发实现静态属性和方法

前言

在 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

在这个示例中,myStaticVarMyClass 的静态变量,可以通过类名直接访问。

静态方法

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()
}
}