Это может показаться странным вопросом, но я пытаюсь практиковать написание кода многократного использования или, по крайней мере, пытаюсь правильно обдумать это, если вы понимаете, что я имею в виду? У меня есть задание, связанное с написанием текстового интерфейса с несколькими различными меню. Таким образом, есть два подхода к этому: (1) класс для каждого меню (sloppy) или (2) класс, который содержит информацию для всех меню (не как неаккуратно).Java, объекты класса, которые имеют разные методы друг к другу?
Теперь, когда я пишу это, кажется, что это может быть плохая практика, но возможно ли иметь один класс, который содержит основные компоненты меню (заголовок, список MenuOptions и т. Д.), Но методы можно добавить в другое время?
В качестве альтернативы, если это невозможно/целесообразно, что было бы предпочтительным способом сделать что-то подобное: (a) отдельные классы для отдельных меню или (b) один большой класс, который содержит весь код для разные меню?
Я не в полной мере понять, что вы говорите, но только '" а класс для каждого меню (неаккуратный) или класс, который содержит информацию для всех меню (не как неаккуратный). «бит, на самом деле, разделение в разных классах лучше, когда это возможно (пока это не ставит под угрозу смысл). Взгляните на принцип [SRP] (https://en.wikipedia.org/wiki/Single_responsibility_principle), то, что я говорю, может иметь больше смысла после этого. – acdcjunior
"класс для каждого меню (sloppy) или класс, который содержит информацию для всех меню (не так небрежно)." Если вы пытаетесь использовать многоразовый код, мне интересно, как многократно использовать код, если у вас есть все в одном классе? Я бы сказал, держать вещи раздельно в небольшие управляемые и тестируемые классы. –
К сожалению, у меня нет кода (все еще планирую, как я подойду к этому заданию), я знаю, что его трудно понять. @acdcjunior Обычно я соглашаюсь с вами, но когда дело доходит до меню, каждый пункт меню отвечает за другое в программе или, по крайней мере, отвечает за вызов разных методов в программе. – user3593486