2015-11-02 87 views
2

我是一个非常新的Java初学者,试图创建一个包含从另一个类创建的对象的数组。如何将创建到不同类中的对象创建到数组中

要分解它,我有一个名为TextBook的类,它存储书的标题,LibraryClass,它有一个TextBook[] bookShelf成员变量。这个成员数组是存储教科书的地方。

所以我想我需要做的是:

public class LibraryClass 
{ 
    private TextBook[] bookShelf; 

    public static void main(TextBook[] args, int x) { 
     TextBook [] bookShelf = new TextBook[x]; 
     for(int i=0;i<bookShelf.length;i++) 
     { 
      bookShelf[i] = TextBook[]; 
     } 
     } 

bookShelf[i] = TextBook[];是我在哪里卡住了。所创建的新教科书对象将出现,如textBook1textBook2textBook3等。我需要以某种方式链接bookShelf[i]textBook1,2,3等,但如何?

+0

'public static void main(TextBook [] args,int x)' - 是否允许? – Rehman

+1

@Rehman'main'可能被重载。检查[这里](http://stackoverflow.com/questions/3759315/can-we-overload-the-main-method-in-java)。 – sam

+0

所以你说我的主要错误? int x应该是一个参数,它决定了书架可以容纳多少个教科书 – anony

回答

1

bookShelf[i] = new TextBook();而不是bookShelf[i] = TextBook[];假设您的TextBook类有一个无参数构造函数。

这就是你如何创建一个新的对象new是一个必要的关键字,并调用TextBook()将调用该对象的构造函数。

数组中的每个索引都会有一个新的TextBook对象。

这些对象可以通过bookShelf[i]访问,其中i是您尝试访问的对象的索引。