Java JSplitPane.setRightComponent()方法是否会自动销毁以前设置的对象?

Java JSplitPane.setRightComponent()方法是否会自动销毁以前设置的对象?,java,swing,memory,Java,Swing,Memory,我正在编写一个java swing应用程序,其中有一个JSplitPane(拆分窗格)。首先,它添加了一个JPanel(比如SummaryPanel)。 现在,从SummaryPanel中,我获得了对父JSplitPane sp的引用,并在单击按钮时设置了一个不同的JPanel 当我查看任务管理器时,每次单击并设置JPanel时,应用程序的内存使用都会增加,而且不会减少 下面是示例程序的外观: 主框架内: JSplitPane sp = new JSplitPane(); sp.getLeftC

我正在编写一个java swing应用程序,其中有一个JSplitPane(拆分窗格)。首先,它添加了一个JPanel(比如SummaryPanel)。 现在,从SummaryPanel中,我获得了对父JSplitPane sp的引用,并在单击按钮时设置了一个不同的JPanel

当我查看任务管理器时,每次单击并设置JPanel时,应用程序的内存使用都会增加,而且不会减少

下面是示例程序的外观:

主框架内:

JSplitPane sp = new JSplitPane();
sp.getLeftComponent().setVisible(false);
sp.setRightComponent(new SummaryPanel());
Summary面板内部:

myBtn.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent arg0) {
            JSplitPane parent = (JSplitPane) getParent();
            parent.setRightComponent(new MyPanel());
        }
});
他们有更好的方法吗?
或者,我可以通过任何方式降低内存使用量。

“应用程序的内存使用量会增加,不会下降”,除非您有内存耗尽的危险,否则请忽略它。您可以非常肯定JVM会。为了更快地获得更好的帮助,请发布一个(并将“删除/添加”代码放入循环)。@安德鲁·汤普森:好的,谢谢,我收到了。。。通过本文可以更好地理解: