【发布时间】:2021-07-09 08:01:41
【问题描述】:
构造函数是否可以调用与其相关的类?例如(在下面的代码中)我正在尝试使用 ClockTimer 创建一个新时钟并调用具有 ClockTimer 参数类型的 AnalogClock 构造。它似乎不起作用,因为它给了我一个错误,但是在 ClockFrame 类中使用 ClockTimer 参数创建一个新的 AnalogClock 似乎可以工作。为了运行,我需要在 AnalogClock(在 ClockApp 中)解析什么?
【问题讨论】:
-
如果 AnalogClock 依赖于 ClockTimer 而 ClockTimer 依赖于 AnalogClock 这意味着你有一个循环依赖。在 Java 中无法解决这种情况,因此您需要找到另一种方法来规避这种情况。
-
它会给你什么错误?
-
@tgdavies 我认为很明显在声明之前使用了计时器,所以可能是未知符号计时器。
-
您可以尝试在 AnalogClock 构造函数中创建 ClockTimer,时钟可以自行传递。
-
您没有在
ClockTimer类中使用clockFrame,为什么不删除该字段?
标签: java object constructor