Kotlin中的常量:如何正确创建和使用?
大家好!我刚开始从Java学习Kotlin,对常量这个话题感到困惑。在Java中,我习惯用`public static final`声明全局常量,用`final`声明局部常量。但在Kotlin中完全不同。
例如,我想声明应用程序中最大登录尝试次数为5,以及应用名称常量"MyApp"。我尝试了以下方式:
```kotlin
// 方式1:在类内部
class LoginManager {
val MAX_ATTEMPTS = 5
val APP_NAME = "MyApp"
}
// 方式2:在文件级别
val MAX_ATTEMPTS = 5
val APP_NAME = "MyApp"
```
但我读到在类内部使用`val`声明常量是不好的实践,因为这不是真正的编译时常量。而在文件级别,如果类被加载,它们仍然会绑定到companion object。
另外,我在文档中看到`const`关键字。什么时候应该使用它?如果常量不是基本类型或字符串,而是列表或对象,该怎么办?
请指教,谢谢!