JFrame с обычным поведением - композиция или наследство? - PullRequest
0 голосов
/ 11 ноября 2010

У меня есть три похожих класса, отвечающих за отображение поворотной рамки с различными компонентами.Все они составлены с использованием JFrame и содержат одинаковый дублирующий метод setRandomLocation ().Чтобы избавиться от него, что мне делать?

  1. Оставайтесь с предпочтительной для всех композицией и создайте некоторый класс Util с помощью getRandomLocation (),
  2. Создайте что-то вроде RandomLocatedFrameрасширение JFrame, а затем использовать этот класс в качестве основы для моих классов - но достаточно ли такого дополнительного поведения, чтобы оправдать использование наследования?

Заранее спасибо за любые предложения.

1 Ответ

0 голосов
/ 11 ноября 2010

Если getRandomLocation является настоящим глаголом ваших классов (например, setVisible или dispose), вы должны использовать наследование, как вы описали.Если метод просто генерирует случайные координаты для помещения кадра, он должен быть в другом классе, а не в кадре.

...