2

我正在为我的考试创建一个 Java 项目。该项目要求我使用面向对象的编程来做一个类似 groupon 的程序。它要求我实现一个销售打折产品的程序。我有假期、晚餐和普通物品。我决定创建一个超类产品,然后扩展它创建其他三个类:晚餐、假期和对象。但它也要求我管理产品目录,使每个产品都具有唯一标识符,我该怎么做?即使我创建了一个目录类,使用 ArrayList 管理产品,我如何为每个元素添加一个标识符?我还必须区分用户和管理员。他们每个人都可以做不同的事情,管理员可以在目录中添加和删除产品,查看有效的报价并订购它们,并且可以查看不再负担得起的报价。

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

谢谢!

4

1 回答 1

0

我假设您有产品和用户的对象,您只需要为唯一 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)
于 2014-01-21T17:50:22.323 回答