У меня есть класс MainJFrame, наследуемый от JFrame. В нём есть главная панель. Я сделал в отдельной панели код, которые меняет цвета панели, элементов на ней и шрифта. В класса MainJFrame я добавил к кнопкам из той панели ActionListener,ы. Цвета меняются, как нужно, но с если на кнопки нажимать несколько раз, то каждый раз под программу выделяется больше памяти. Я не знаю, как решить эту проблему Вот код для класса MainJFrame
public class MainJFrame extends JFrame {
    private Color one;
    private Color two;
    private Color three;

    MainJPanel mainPanel = new MainJPanel();
    public MainJFrame(){
        super();
        Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
        int width = (int) screenSize.getWidth();
        int height = (int) screenSize.getHeight();
        this.setSize(width*45/100, height*75/100);
        this.setLocationByPlatform(true);
        this.setLayout(new BorderLayout());
        this.add(mainPanel, BorderLayout.CENTER);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        customizationButton();
        this.setVisible(true);
    }
    private void customizationButton(){
        this.mainPanel.gm.x1.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                one = new Color(111, 255, 7);
                two = new Color(16, 255, 255);
                three = new Color(150, 25, 7);
                mainPanel.c1.setTheme(one, two, thre);
            }
        });
        this.mainPanel.gm.x2.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                one = new Color(11, 2, 70);
                two = new Color(16, 255, 25);
                three = new Color(15, 25, 7);
                mainPanel.c1.setTheme(one, two, thre);
            }
        });
    }
}
А вот метод, меняющий цвет
public void setTheme(Color panel, Color element, Color font){
        this.setBackground(panel);
        x1.setBackground(element);
        x2.setBackground(element);
        x3.setBackground(element);
        x4.setBackground(element);
        x1.setForeground(font);
        x2.setForeground(font);
        x3.setForeground(font);
        x4.setForeground(font);
    }
Я пробовал делать one = null; two = null ; three = null при нажатии кнопки, но проблему это не решило.