3
我知道並完全同意通過接口共享常量被認爲是bad practice,但我沒有選擇這種實現。不管:該字段不明確,但明顯隱藏
interface SuperClassConstants {
public static final String CONSTANT = "super";
}
interface SubClassConstants extends SuperClassConstants {
public static final String CONSTANT = "sub";
}
class SuperClass implements SuperClassConstants {
}
class SubClass extends SuperClass implements SubClassConstants {
public SubClass() {
System.out.println(CONSTANT);
// The field CONSTANT is ambiguous
}
}
爲什麼曖昧?是不是常隱藏?我認爲Java的會理解我期待"sub"
...
但是你的'SubClass'類可以訪問這兩個接口...... –