Следует ли наследовать JFrames GUI? - PullRequest
2 голосов
/ 05 августа 2010

У меня есть JFrame 'A', и я хотел бы предоставить очень похожий, но с дополнительными кнопками и другой функциональностью.Мне было интересно, должен ли я наследовать 'A', а затем переписать методы-обработчики и добавить компоненты, или же рекомендуется другой подход.

Ответы [ 3 ]

2 голосов
/ 05 августа 2010

Предпочитаю композицию наследственности в большинстве случаев.В этом случае это зависит от количества кода в A. Вы можете использовать шаблон Strategy для точек изменчивости в коде, но в большинстве случаев наследование будет наименее уродливым.

2 голосов
/ 06 августа 2010

Лично я бы предпочел унаследовать JPanels.Я считаю, что аспект повторного использования больше склоняется к использованию панелей пользовательского интерфейса и их повторному использованию.

Способ создания моих Swing-интерфейсов состоит в том, чтобы иметь JFrame и использовать панель, состоящую из повторно используемых панелей, если они совместно используютобщие функциональные возможности.

Если у вас есть JFrame, который имеет общие функциональные возможности, то вы можете создать его с заданным CloseHandler и другим общим кодом, а затем сделать так, чтобы другие Jframes наследовали от этого общего.

1 голос
/ 05 августа 2010

Наследование - лучший способ здесь.

Честно говоря, если сделать это иначе, потребуется лот работы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...