Я создаю игру на Java для удовольствия, и я пытаюсь решить, как организовать мои классы для графического интерфейса. До сих пор все классы с только компонентами качания и компоновкой (без логики) находились в пакете под названием «ui». Теперь мне нужно добавить слушателей (т. Е. ActionListener) к компонентам (т. Е. Кнопке). Слушателям необходимо общаться с классом Game.Как мне организовать Java-интерфейс?
В настоящее время у меня есть: Game.java - создает кадр добавления к нему панелям
import javax.swing.*;
import ui.*;
public class Game {
private JFrame frame;
Main main;
Rules rules;
Game() {
rules = new Rules();
frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
main = new Main();
frame.setContentPane(main.getContentPane());
show();
}
void show() {
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
public static void main(String[] args) { new Game(); }
}
Rules.java - логическая игра
пакетапользовательского интерфейса - все классы создают новые панели, которые будут выгружены с область содержимого основного кадра Main.java (Главное меню) - создает панель с компонентами
Где я теперь размещаю функциональность для основного класса? В игровом классе? Раздельный класс? Или вся организация ошибается?
Thanks
Не делайте UML, если не знаете, зачем вам это нужно. Не делайте шаблонов проектирования, если это не имеет смысла. Сохраните код простым, сохраните код в чистоте, рефакторинг при необходимости. – Kirill
@ Кирилл: Я полностью согласен с тобой. Спасибо за ваш комментарий. – Cristian