Помимо хорошей идеи от Antiossss, вы также можете сделать одно из следующих двух:
- Как правило, любой контейнер пользовательского интерфейса знает о своих дочерних элементах.Таким образом, вы можете написать некоторый общий код, который (вероятно, рекурсивно) выбирает дочерние элементы некоторого компонента пользовательского интерфейса, и, если это JPanel, установите фон
- , вероятно, легче сделать: ваш код просто запоминает все JPanels вам небезразличны
Другими словами: если вы хотите относиться ко многим "вещам" аналогичным образом, самое простое решение - иметь поле
Set<JPanel> myPanels = new HashSet<>();
в некоторых ваших «корневых» классах, и каждый раз, когда вы создаете панель ... вы добавляете ее к этому набору, так что, когда вам это нужно, вы можете перейти:
for(JPanel aPanel : myPanels) { aPanel.setBackground(...