2014-01-21 3 views
2

Я создаю проект Java для своего экзамена. Проект просит меня выполнить групповую программу с использованием объектно-ориентированного программирования. Он просит меня реализовать программу продажи дисконтных продуктов. У меня есть праздники, ужины и обычные предметы. Я решил создать суперкласс класса, а затем расширить его, создав три других класса, обеды, праздники и объекты. Но он также просит меня управлять каталогом продуктов, которые имеют для каждого продукта уникальный идентификатор, как я могу? Даже если я создаю класс Catalog, управляя продуктом с помощью ArrayList, как я могу добавить идентификатор для каждого элемента? Я также должен различать пользователей и администраторов. Каждый из них может делать разные вещи, администратор может добавлять и удалять продукты из каталога, видеть активные предложения и заказывать их, а также видеть более доступные по цене предложения. Пользователь может зарегистрироваться на систему, купить кредиты, просмотреть доступные предложения, купить что-то и посмотреть все, что он купил, отсортировать по цене или по дате покупки.Пользователь и администратор Java Project

Вопрос в том, как я могу различить пользователя и позволить им делать разные вещи? Я должен разрешить операцию входа в систему в начале и показать другую кнопку для пользователей и администратора. Может мне помочь? Дайте мне представление о том, как управлять ситуацией? (Должны ли они быть суперклассом (пользователем) с администратором, который расширяет пользователя?)

Спасибо!

ответ

0

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

public class Product 
{ 
    public int uniqueID; 
    public String productName; 

    // etc... 
} 

public class User 
{ 
    public boolean isAdministrator; 
    public String username; 

    // etc... 
} 

Вы можете хранить свои продукты в ArrayList и быть в состоянии сказать, что каждый уникальный идентификатор является доступ к этой области:

catalog.elementAt(x).uniqueID; 

и проверить, если пользователь является администратором путем доступа поле:

if(user.isAdministrator) 

должны ли они быть суперкласс (пользователь) с правами администратора, который расширяет пользователя?

Вы также могли бы сделать это таким образом, вы затем проверить, является ли пользователь администратором, проверив тип:

if(user instanceof Administrator) 
+0

Привет! Спасибо за ответ! Может быть, я не был достаточно ясен! Я знаю, как отличить Admin от пользователя с instanceof, моя проблема заключается в том, как показать разные iterfaces, кнопки, один для администратора и один для кнопок. И, если я разрешаю процедуру входа в систему, позволяя пользователю вставлять имя пользователя и пароль, как я могу отличить от администратора и пользователей? К сожалению я знаю, как использовать базы данных, и я reaaaally понятия не имею, как управлять им, не используя базы данных ... – user1868607

+0

@ user1868607, не видя всего вашего кода, кто знает? –

Смежные вопросы