Java:访问隐藏接口字段
如果字段是隐藏的,如何使用实现类的实例(Java:访问隐藏接口字段,java,interface,field,Java,Interface,Field,如果字段是隐藏的,如何使用实现类的实例(this或super或instanceName,如果可能)访问接口的字段(默认为public、static和final) package mypack; public interface MyInterface { String str = "MyInterface.str"; String inheritanceTest = "inherited"; } 我要访问的字段是str 另一个字段inheritanceTest用于证明接口字段
this
或super
或instanceName,如果可能)访问接口的字段(默认为public、static和final)
package mypack;
public interface MyInterface {
String str = "MyInterface.str";
String inheritanceTest = "inherited";
}
我要访问的字段是str
另一个字段inheritanceTest
用于证明接口字段实际上是继承的(与接口静态方法不同)
注释
Type.staticMemberNameOrSignature
)result
赋值的注释行是生成编译时错误的行(添加到该行)this
或super
)访问实现类隐藏的接口字段
是否可以使用类的实例(实例关键字,如this或super)访问实现类隐藏的接口字段
对。与其使用this或super,不如使用接口名来访问它
MyInterface.str
返回MyInterface.str代码>它是一个接口这一事实并不重要。@SotiriosDelimanolis问题已更新。答案保持不变。JLS的报价涵盖了所有选项。其中只有两个与接口相关,完全限定名和转换到接口。
MyInterface.str