gpt4 book ai didi

java - 在Java中访问子类中父类(super class)的 "final"字段(并更新它们)

转载 作者:行者123 更新时间:2023-12-01 18:15:53 26 4
gpt4 key购买 nike

我有一个用于建筑物和不同类型建筑物的子类的字段,这些建筑物继承于 Buildings类(class)。 Buildings类有一个名为“totalNumber ”的字段,每次我在子类之一中添加建筑物时我都想更新该字段。

我要totalNumber在建筑物类中始终显示已 build 的建筑物总数。

在这种情况下,我应该对“totalNumber ”字段使用“final”关键字吗?

如果在子类“Cottage”的对象内会发生什么,即cott我打电话

cott.totalNumber = cott.totalNumber += 1

它会更新它继承的字段吗?

请帮忙。谢谢。

最佳答案

final 表示您可以在初始化变量时一次性赋值,之后它就是只读的。在最简单的情况下,您要寻找的是某种静态变量,用于计算建筑物的创建实例。但这可以很容易地通过这种方式完成:

public class Buildings{
//a simple counter for created instances
private static int createdInstances = 0;

public Buildings(){
//new instance created -> increment counter
createdInstances++;
}
}

如果您创建子类的实例,则始终会调用父类(super class)的构造函数,因此您无需在子类中执行任何操作。

关于java - 在Java中访问子类中父类(super class)的 "final"字段(并更新它们),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29598109/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com