gpt4 book ai didi

Java 拖放和可克隆

转载 作者:太空宇宙 更新时间:2023-11-04 08:08:18 26 4
gpt4 key购买 nike

我要解决这个问题,您有一个 JPanelJLabel,并且您必须通过拖放来克隆 JLabel,并在放置 JLabelJPanel 上创建一个 JLabel 克隆。我想问的第一件事是是否可以在匿名类(例如监听器)中实现 Cloneable 接口(interface)到 JLabel,这样我就不必编写自己的类来扩展 JLabel 并实现 Cloneable。我知道如何通过传输“text”属性将 JLabel 拖放到 JTextField,但我不知道如何将 JLabel 克隆到 JPanel

最佳答案

在这种情况下,实现Cloneable接口(interface)不太可能实现任何有益的效果。在 Effective Java, Second Edition ,作者在第 11 项:明智地覆盖克隆中概述了克隆对象的变幻莫测。

Drag and Drop传输数据,而不是容器。由于 String 是不可变的,因此根本没有理由克隆 String。对于可变数据,复制构造函数或工厂方法更有意义。

由于 JLabel 不可由用户编辑,因此它可能是 DnD 的意外目标,尽管它是 possible 。或者,您可以添加 suitable component在运行时使用容器的 add() 方法,然后使用 validate()repaint()

关于Java 拖放和可克隆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11699583/

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