gpt4 book ai didi

java - 不断检查 boolean 值

转载 作者:行者123 更新时间:2023-11-29 03:43:38 25 4
gpt4 key购买 nike

我有 2 个类(class)。当您单击特定位置时,第一个类将 boolean 值变为 true,第二个类调用 frame.removeAll()frame.add(new CanvasSelect())如果第一类中的 boolean 值为真。它似乎只检查一次 boolean 值。

有没有办法让第二个类不断地检查第一个类中的 boolean 值?

最佳答案

正如评论中所建议的,如果您真的想知道发生了什么,您确实需要发布(精简版)代码。我可以想到这可能发生的三个可能原因。

可能性 1: 您需要将 boolean 值标记为 volatile。如果此处有多个线程在运行,那么如果该字段未标记为可变字段,则其中一个线程可能会看到过时的值。但是,听起来您正在进行 GUI 编程(可能使用 Swing),因此所有这些事件都应该在 GUI 事件线程中发生——因此我怀疑这就是问题所在。不过,它仍然值得一试。

可能性 2: 您正在根据 boolean 值设置事件处理程序,而不是在事件处理程序中检查 boolean 值。在这种情况下,该值只会被读取一次(当设置了 ActionEventHandler 时),而不是在点击事件发生时。

可能性 3:当您清除框架时,您也清除了带有事件处理程序的项目,并且您没有正确地重置它们。我认为这是最有可能的问题。

关于java - 不断检查 boolean 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12032407/

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