- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我最近了解到(在基于 C# 的类中)有时认为在对象的构造函数中注册事件监听器是危险的,因为在对象完全初始化之前,这些事件监听器会获得对该对象的引用,并且可以(在至少在理论上)尝试在构造完成之前访问对象。
据我了解,在构造完成之前访问对象可能会导致崩溃,至少在某些语言中是这样......如果它不会导致崩溃,那么我们只关心注册最后发生,所以我们的当我们注册它的监听器时,对象就准备好接收事件了。
我现在开始使用新的 Swing GUI,并注意到我在构建 Swing GUI 时的标准做法是在构造函数中连接事件监听器。
似乎不太可能在构造函数完成之前调用 Swing 组件的事件监听器,因为它们可能在组件被添加到可见的 Swing 容器之前不会连接,这只能在构造之后发生。
那么,在 Swing 中工作时是否有真正的理由避免这种反模式?如果是这样,最简单的方法是什么?
最佳答案
只要您在 UI 线程中分配事件监听器就可以了。
关于java - 我应该担心在 Swing 中泄漏 "this"指针吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9184656/
我刚刚开始使用 data-* 属性来存储查看所需的自定义属性和值。例如 。 基于data-*我正在做一些操作(CRUD)。如果用户在客户端更改 data-* 属性值(即使用 firebug 和其他
我想知道是否有人可以指出正确的方向。我最近开始使用 LinqToSQL 并喜欢强类型数据对象等。 我只是在努力了解对数据库性能等的影响。例如,假设我正在开发一个简单的用户配置文件页面。该页面显示有关用
我正在开发一个有文本区域的 Angular 应用程序。此文本区域的内容随后用于填充输入文本的预览。所有这些都在客户端完成。我担心有人能够将代码注入(inject)我的应用程序,例如 /*So
我在一台机器上运行 CDH 5.6(Hadoop 2.6,HBase 1.0.0)。只有 Hadoop 和 HBase 在运行。 Hadoop 配置为复制因子 1,Hbase 运行在 HDFS 之上,
在 SO 和其他地方,如果没有人礼貌地指出最好使用参数化输入和存储过程,几乎不可能在示例代码中发布长连接的 SQL 指令。 最近的示例 here . 但是担心 Winforms 项目中的 SQL 注入
未受攻击的计算机上的 Web 应用程序在不安全的 WiFi 环境中容易受到 XSS、CRSF、sql 注入(inject)攻击和 cookie 窃取。 为了防止这些安全问题,有以下补救措施 sql注入
我在一个执行数值计算的库上工作了一段时间。它是用纯原生 C++ 编写的,直到现在我一直在使用简单的控制台应用程序来测试它的功能。 是时候在库的顶部构建一个 GUI - 以更好地显示结果表并以图形形式呈
我是一名优秀的程序员,十分优秀!