Подумайте о классическом процессе установки, когда у вас есть кнопка «Далее», и когда вы щелкаете по ней, содержимое окна изменяется. Чтобы представить эту ситуацию, я подумал о двух возможных решениях:
- при нажатии «Далее» уничтожить текущий JFrame и создать новый JFrame, возможно передавая его конструктору полезную информацию (например, фактический размер окна, содержимое, вставленное пользователем в текущий кадр, ...)
- при нажатии кнопки «Далее» удаляются все компоненты из текущего JFrame и добавляются новые компоненты по мере необходимости.
Первое решение выглядит лучше в OOprogramming, потому что я могу хранить отдельные классы для разных фреймов и избегать огромных методов, которые очищают фрейм и заполняют его заново. Однако первое решение звучит немного «грязно», и я должен передать много параметров новому кадру. Чтобы представить эту ситуацию, я бы выбрал второе решение.
Теперь подумайте о меню с компонентом «option»: в этой ситуации я создал бы новый JFrame при нажатии «option», чтобы я мог заполнить его пунктами option. Это правильное решение? Есть ли способ, которым я всегда могу узнать, какое из них является лучшим решением? Есть ли какие-то решения, о которых я не думал?