gpt4 book ai didi

java - 我应该担心在 Swing 中泄漏 "this"指针吗?

转载 作者:IT老高 更新时间:2023-10-28 21:02:54 27 4
gpt4 key购买 nike

我最近了解到(在基于 C# 的类中)有时认为在对象的构造函数中注册事件监听器是危险的,因为在对象完全初始化之前,这些事件监听器会获得对该对象的引用,并且可以(在至少在理论上)尝试在构造完成之前访问对象。

据我了解,在构造完成之前访问对象可能会导致崩溃,至少在某些语言中是这样......如果它不会导致崩溃,那么我们只关心注册最后发生,所以我们的当我们注册它的监听器时,对象就准备好接收事件了。

我现在开始使用新的 Swing GUI,并注意到我在构建 Swing GUI 时的标准做法是在构造函数中连接事件监听器。

似乎不太可能在构造函数完成之前调用 Swing 组件的事件监听器,因为它们可能在组件被添加到可见的 Swing 容器之前不会连接,这只能在构造之后发生。

那么,在 Swing 中工作时是否有真正的理由避免这种反模式?如果是这样,最简单的方法是什么?

最佳答案

只要您在 UI 线程中分配事件监听器就可以了。

关于java - 我应该担心在 Swing 中泄漏 "this"指针吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9184656/

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