【问题标题】:User and Administrator Java Project用户和管理员 Java 项目
【发布时间】:2014-01-21 17:44:24
【问题描述】:

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

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

谢谢!

【问题讨论】:

    标签: java project groupon


    【解决方案1】:

    我假设您已经为您的产品和用户添加了对象,您只需要为唯一 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)
    

    【讨论】:

    • 嗨!谢谢你的回答!可能我说的不够清楚!我知道如何使用 instanceof 区分管理员和用户,我的问题是如何显示不同的接口、按钮,一个用于管理员,一个用于按钮。而且,如果我允许登录程序,允许用户插入用户名和密码,我如何区分管理员和用户?可悲的是,我知道如何使用数据库,但我真的不知道如何在不使用数据库的情况下管理它......
    • @user1868607 没有看到你的全部代码,谁知道呢?
    猜你喜欢
    • 2021-03-22
    • 2012-07-06
    • 1970-01-01
    • 2021-08-10
    • 1970-01-01
    • 1970-01-01
    • 2017-05-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多