当一个超类有一个被标记为final的字段,但一个子类覆盖(或隐藏)了这个字段时会发生什么?'final'并不能阻止这种情况发生,对吗?我正在处理的具体示例是一个Building类,不同类型的建筑物都是从中继承而来。每种类型的成本等应该对每个子类是固定的,但每种类型的建筑物应该有自己的成本。
编辑: 我后来意识到我不知道自己在上面在说什么。我真正想要的是静态变量成本(static variables of cost)。然而,如果我在超类中声明这些静态变量,它们将对超类是静态的,所以Subclass1.cost例如,指的是与Superclass.cost或Subclass2.cost相同的值。如何使变量对每个子类是静态的,而无需在每个类中声明它们呢?
编辑: 我后来意识到我不知道自己在上面在说什么。我真正想要的是静态变量成本(static variables of cost)。然而,如果我在超类中声明这些静态变量,它们将对超类是静态的,所以Subclass1.cost例如,指的是与Superclass.cost或Subclass2.cost相同的值。如何使变量对每个子类是静态的,而无需在每个类中声明它们呢?