例如我有下一个界面:
public Interface A {
String CONST = "someText";
}
我想做一些可以汇编像 A 这样的接口(interface)的事情。但我不希望我的汇编器接口(interface)可以覆盖其父接口(interface)的成员,例如:
public Interface Assembler {
String CONST = "someText"; // there isn't any error
}
您能提出任何解决方案吗?
谢谢!
编辑:如何拒绝父界面中的重叠字段? (当我在子界面中使用同名字段时,编译器会向我显示一些错误)
最佳答案
您永远不能覆盖字段,无论是静态
(如您的情况)还是实例字段。您所能做的就是隐藏它们,但这只是一个命名空间问题;所有字段都将可用,只需通过类型名称进行显式限定即可。
每当您需要重写时,您就需要实例方法。根据您的情况,引入一个返回正确字符串值的方法。但是,您将无法在接口(interface)中实现它。
关于java - 拒绝覆盖扩展接口(interface)的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13802711/