2014-01-21 64 views
2

我正在爲我的考試創建Java項目。該項目要求我使用面向對象的編程來實現一個類似groupon的程序。 它要求我實現銷售打折產品的計劃。 我有假期,晚餐和普通物品。我決定創建一個超類產品,然後將其擴展爲創建其他三個類,晚餐,假日和對象。但它也要求我管理產品的目錄,使每個產品都具有唯一的標識符,我該怎麼辦?即使我創建一個Catalog類,使用ArrayList管理產品,我如何爲每個元素添加一個標識符?我還必須區分用戶和管理員。他們每個人都可以做不同的事情,管理員可以添加和刪除產品目錄,查看活動報價並訂購它們,並且可以看到不再實惠的報價。 用戶可以註冊系統,購買積分,查看優惠活動,購買東西並可以看到他購買的所有東西,按價格或購買日期對其進行分類。用戶和管理員Java項目

我的問題是,我如何區分用戶並允許他們做不同的事情?我必須在開始時允許登錄操作,併爲用戶和管理員顯示不同的按鈕。可以幫助我嗎?給我一個如何管理這種情況的想法? (他們是否應該是一個超級用戶(管理員可以擴展用戶)?)

謝謝!

回答

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) 
+0

嗨!謝謝你的回答!也許我還不夠清楚!我知道如何區分管理員與用戶與instanceof,我的問題是如何顯示不同的iterfaces,按鈕,一個用於管理和一個按鈕。而且,如果我允許登錄過程,允許用戶插入用戶名和密碼,我該如何區分管理員和用戶?可悲的是,我知道如何使用數據庫,我真的不知道如何管理它,而不使用數據庫... – user1868607

+0

@ user1868607沒有看到你的代碼的全部,誰知道? –