Я относительно новичок в программировании на Java и, возможно, пропустил что-то очевидное, так что несите меня.Java: параметры метода создания событий
Я создаю программу, которая использует Swing API с JDesktopPane для создания графического интерфейса. На главном экране отображается кнопка «Новое окно». Пользователь нажимает на него, а новый JInternalFrame создается и добавляется в JDesktopPane. Как в следующем, упрощенном методе:
protected void createNewWindow(JPanel panel) {
JInternalFrame fooFrame = new JInternalFrame();
fooFrame.setContentPane(panel);
desktop.add(fooFrame);
}
Мой вопрос в том, что это. Скажите, что пользователь нажимает кнопку десять раз. Создаются десять JInternalFrames. Все они являются переменными метода, так что они имеют одно и то же имя.
Что происходит с этими старыми переменными fooFrame? Собирает ли сборщик мусора и уничтожает их на любом этапе? Я бы не подумал, что все еще держит ссылку на них. Есть ли способ получить доступ к любому из этих старых fooFrames? Скажем, я хотел изменить цвет текста на JPanel на четвертом из десяти fooFrames. Любой способ сделать это?
Я знаю, что это очень глупый способ сделать что-то, и просто создать экземпляр JInternalFrame, возможно, массив, чтобы создать экземпляр в методе и добавить JDesktopPane. Мой вопрос был больше из любопытства, чем что-либо.
Спасибо, Habib. Расторгнул это для меня. –
@TomSprud, добро пожаловать – Habib