用户和管理员Java项目

问题描述:

我正在为我的考试创建Java项目。该项目要求我使用面向对象的编程来实现一个类似groupon的程序。 它要求我实现销售打折产品的计划。 我有假期,晚餐和普通物品。我决定创建一个超类产品,然后将其扩展为创建其他三个类,晚餐,假日和对象。但它也要求我管理产品的目录,使每个产品都具有唯一的标识符,我该怎么办?即使我创建一个Catalog类,使用ArrayList管理产品,我如何为每个元素添加一个标识符?我还必须区分用户和管理员。他们每个人都可以做不同的事情,管理员可以添加和删除产品目录,查看活动报价并订购它们,并且可以看到不再实惠的报价。 用户可以注册系统,购买积分,查看优惠活动,购买东西并可以看到他购买的所有东西,按价格或购买日期对其进行分类。用户和管理员Java项目

我的问题是,我如何区分用户并允许他们做不同的事情?我必须在开始时允许登录操作,并为用户和管理员显示不同的按钮。可以帮助我吗?给我一个如何管理这种情况的想法? (他们是否应该是一个超级用户(管理员可以扩展用户)?)

谢谢!

我假设你已经有产品和用户的对象,你只需要为唯一ID和特定用户是否为管理员添加一个字段。喜欢的东西:

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

    // etc... 
} 

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

    // etc... 
} 

可以存储在一个ArrayList您的产品和能够告诉每一个独特的ID是什么通过访问现场:

catalog.elementAt(x).uniqueID; 

和检查,如果用户是管理员通过访问现场:

if(user.isAdministrator) 

他们应该是一个超类(用户)与扩展用户的管理员?

你也可以这样做的,你再检查用户是否是管理员通过检查类型:

if(user instanceof Administrator) 
+0

嗨!谢谢你的回答!也许我还不够清楚!我知道如何区分管理员与用户与instanceof,我的问题是如何显示不同的iterfaces,按钮,一个用于管理和一个按钮。而且,如果我允许登录过程,允许用户插入用户名和密码,我该如何区分管理员和用户?可悲的是,我知道如何使用数据库,我真的不知道如何管理它,而不使用数据库... – user1868607

+0

@ user1868607没有看到你的代码的全部,谁知道? –