簡體   English   中英

在Java中創建2D數組以存儲兩種對象

[英]Create a 2D array in java to store two kinds of objects

我有一個超一流的Agent 超類Agent具有兩個子類:1. User 2. Seller 這兩個子類是User_actionSeller_action的超類。 我想創建兩個對象。 第一個對象是User_action類。 創建該對象的目的在於,它應該繼承Agent類和User類的變量和方法(並且,我希望可以實現這一目標。)。 並且,我從類Seller_action創建第二個對象,並牢記類似的目標(繼承自類Agent和類Seller變量和方法)。

一次,我創建了這些對象(或我相信的實例),然后將它們存儲在2D數組中。 我不知道該怎么做。 而且,這是我第一次嘗試使用Java,因此我已經閱讀了非常基礎的內容,現在我正在嘗試改進代碼。

現在,我的問題是:如何在某種對象中存儲兩種對象。 您知道,我這樣做的原因是因為我希望所有對象都出現在地理坐標上,並且我想知道每個人的坐標或地理位置(x,y)。 而且,正如我來自MATLAB那樣,最好的方法是將其存儲在Matrix(JAVA中的2D數組)中。

我將不勝感激任何建議。 非常感謝!

我認為您應該做的是擁有2個超級類:1-代理,2-動作。 每個都有2個子類,並且操作具有User值。 然后,您可以創建一個動作數組

我相信,您正在以以下方式設計類,以便對象ua和sa(在下面定義)繼承其父級的所有值:

代理是父類:

class Agent {  //the parent class

}

類用戶是代理的子類

class User extends Agent{   //user is subclass of Agent
    int Agent_1,Agent_2;
    User()
    {
        Agent_1 = 1;
        Agent_2 = 2;
    }
}

賣方類別是代理的子類別

class Seller extends Agent{   //Seller is sub class of Agent

    int Seller_1, Seller_2;
    Seller()
    {
        Seller_1 = 3;
        Seller_2 = 4;
    }
}

User_action是User的子類

class User_action  extends User{   //user action is subclass of User
    int UA_1, UA_2;
    User_action()
    {
        UA_1=5; UA_2 = 6;
    }

}

Seller_action是Seller的子類

class Seller_action extends Seller{   //Seller action is subclass of Seller
    int SA_1, SA_2;
    Seller_action()
    {
        SA_1=7; SA_2 = 8;
    }
}

然后創建以下對象(它們從其父級繼承所有值):

User_action ua = new User_action();
Seller_action sa = new Seller_action();

ArrayList<Object>[][] table = new ArrayList[10][10];
table[0][0] = new ArrayList<Object>(); // add another ArrayList object to [0,0]
table[0][0].add(ua); // add object to that ArrayList

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM