只读属性使用const关键字之后将没有get方法,举个例子
在kotlin文件中,写两个包级属性,一个是const,一个不是const
const val i = 1
val j = "A"
使用java代码访问,访问方式是不同的
public class TestConst {
public static void main(String[] args) {
int i = ConstKt.i;
ConstKt.getJ();
}
}
一种是使用get方法访问,一种是直接使用类访问。说明const关键字实际上相当于java的static final。
需要注意的是,Const只能是kotlin的string和基本类型。
其实const相当于@JvmField注解,比如下面的代码
@JvmField
val c = 3
就和
const val c = 3
效果一样
这就是kotlin中const关键字的本质。