Polymorphi c Правила массива (программа для супермаркетов) - PullRequest
1 голос
/ 12 января 2020

Итак, у меня есть класс с именем UserList, который содержит атрибут с именем Users, который является ArrayList моего абстрактного класса User.

enter image description here

Мой User Класс имеет подклассы Customer и Owner.

enter image description here

enter image description here

Внутри UserList я создаю новые типы пользователей на основе своего файла, которые загружаю в класс UserList.

enter image description here

Когда файл загружается, у меня есть метод внутри UserList, который создает Owner. Он проверяет, есть ли в файле 1 владелец. Если нет Owner или более одного владельца, выдается ошибка.

Имеет ли смысл иметь класс UserList или, скорее, класс CustomerList и класс Owner (учитывая, что мой класс UserList будет подключать мою программу супермаркета)?

Если эти правила применяются, могу ли я иметь методы в своем классе UserList, которые проверяют тип пользователя (Customer, Owner), например boolean IsOwner(User CurrentUser) и boolean IsCustomer(User CurrentUser)?

Также учитывая, что моя программа сможет реализовать сотрудников в будущем, я чувствую, что класс UserList имеет немного больше смысла.

1 Ответ

1 голос
/ 12 января 2020

UserList, CustomerList, SoleOwnerList, EmployeeList все имеют смысл в зависимости от ваших намерений.

Если вы хотите управлять списком пользователей, просто наберите go для UserList! Обобщение предназначено для того, чтобы иметь возможность справиться с таким случаем, когда пользователи являются чем-то более общим для обозначения разных категорий пользователей.

Но я скажу вам кое-что, что вы уже знаете:

Также учитывая, что моя программа сможет реализовывать сотрудников в будущем, я чувствую, что класс UserList имеет немного больше смысла .

...