gpt4 book ai didi

java - 未记录的神秘类——垃圾,还是我不知道的设计模式?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:16:37 33 4
gpt4 key购买 nike

我继承了以下代码:

(为保护无辜者更改了一些名称。)

package foo.bar.baz;
import javax.swing.JPanel;

//Main panel in the GUI
class DemoRootPanel extends JPanel {
private final MainGUIClass demo;

DemoRootPanel(MainGUIClass demo) {
super();
this.demo = demo;
}

public MainGUIClass getDragAndDropPanelsDemo() {
return demo;
}
}

我没有立即明白为什么它很重要,所以我翻遍了源代码树以查看它的使用情况。这些是所有结果:

$ ack -i rootpanel
DemoRootPanel.java
5:class DemoRootPanel extends JPanel {
8: DemoRootPanel(MainGUIClass demo) {

MainGUIClass.java
70: private final DemoRootPanel rootPanel;
124: rootPanel = new DemoRootPanel(MainGUIClass.this);
821: containerPanels.add(new ContainerPanel(rootPanel));
846: containerPanels.add(new ContainerPanel(rootPanel));
1777: ContainerPanel newContainer = new ContainerPanel(rootPanel);

ContainerPanel.java
30: DemoRootPanel rootPanel;
49: public ContainerPanel(DemoRootPanel rootPanel) {
51: this.rootPanel = rootPanel;

$ ack getDragAndDropPanelsDemo
DemoRootPanel.java
13: public PileSortGUI getDragAndDropPanelsDemo() {

据我所知,这是完全没有必要的。但这是我的第一份工作,我还没有上过大学,等等,所以我想知道这是否是一些对我来说很重要但不熟悉的成语。

PS - 我对 SO 也比较陌生。我相信这个问题可以得到明确的回答,但它看起来确实不如正常情况那么技术性。如果不好,请告诉我,我会把它记下来。 (或者只是修改它 :P )

最佳答案

看起来这只是一个空的 JPanel,它还包含对主类对象的引用。

可能这可以简单地替换为普通的 JPanel(省略 demo 参数)。

可能有人计划将这个类用于某个目标,但后来忘记了。或者有人误解并认为每个使用的 GUI 对象都必须有自己的子类。注释 //GUI 中的主面板 如下所示。

如果有人写了这段代码,请问他(或她)——否则我只会用一个简单的 JPanel 代替它的使用,以减少类的数量。 (你有版本控制系统,不是吗?)

关于java - 未记录的神秘类——垃圾,还是我不知道的设计模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6362160/

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