参考 Java Kotlin 中的接口静态字段
Reference Java interface static fields in Kotlin
我可以从 Kotlin 引用 Java 接口字段吗?我有这个 Java 界面:
public interface BaseColumns {
public static final String _ID = "_id";
public static final String _COUNT = "_count";
}
我用 Kotlin 实现了它:
object UserEntry : BaseColumns {
// some code
}
当我尝试 UserEntry._ID
时,我得到 未解决的引用 。我怎样才能访问 _ID
?我错过了什么吗?谢谢!
在 Kotlin 中,与 Java 不同,接口的静态成员不是派生的,如果不限定接口名称就不能在子classes 中调用。
您应该通过 BaseColumns
引用 _ID
:BaseColumns._ID
可以。
这似乎与 classes 不同:基础 class 静态成员的非限定名称解析为它,但该成员仍未被继承。
我可以从 Kotlin 引用 Java 接口字段吗?我有这个 Java 界面:
public interface BaseColumns {
public static final String _ID = "_id";
public static final String _COUNT = "_count";
}
我用 Kotlin 实现了它:
object UserEntry : BaseColumns {
// some code
}
当我尝试 UserEntry._ID
时,我得到 未解决的引用 。我怎样才能访问 _ID
?我错过了什么吗?谢谢!
在 Kotlin 中,与 Java 不同,接口的静态成员不是派生的,如果不限定接口名称就不能在子classes 中调用。
您应该通过 BaseColumns
引用 _ID
:BaseColumns._ID
可以。
这似乎与 classes 不同:基础 class 静态成员的非限定名称解析为它,但该成员仍未被继承。