引用java中的对象数组

时间:2014-03-24 10:31:08

标签: java object reference

在我提出问题之前,我真的希望有人给我一些具体的建议,因为我现在已经搜索了很长时间,但似乎无法找到正确的答案。 我知道它的基本知识,但我遇到了问题。 这就是我的代码中的内容:

private Interface ClassName; //initializing class that implements interface

public Interface methodName () {
/*This is where I need to make arraylist of objects
of my class and return whole class as reference, maybe something like this:*/
List<Interface> listName = new ArrayList<>(perhaps needs number of objects added?);
listName.add(ClassName);

return ClassName; //or however this should be done

我想一旦我调用方法,我可以简单地使用listName.get(对象的数量);

问题是,我只是将列表作为引用返回,但我的方法要求我只返回带有所述接口的类,我不知道如何将我的类引用到特定的对象arraylist并将其返回到我的方法中。

感谢您的时间。 我会尝试用简单的英语解释。 首先,它的配置因此我不能改变方法的给定方式。 顺便说一下,那些不是实际的变量名,只是用来澄清我正在做什么的名字。 这是解释:        / ** * *获取当前计算机系统的{@link ISystemRegisters}对象。 * * * * @return表示系统寄存器的对象。 * / public ISystemRegisters getRegisters();

所以我的类具有与ISystemRegisters不同的接口,并且这个方法应该保存对象的arrayList(这里是寄存器),然后返回该数组所在的对象引用,正如我所理解的那样。

1 个答案:

答案 0 :(得分:0)

如果您只想从方法中返回列表,那么您应该声明您的方法:

public List<Interface> methodName () { 
    ...
    return listName; // instead of returning ClassName
}

将列表作为返回类型。

旁注

  • 您的第一行令人困惑,您没有初始化任何内容(如@Lucas所指出的),只是声明Interface类型ClassName的变量(此处为字段) }作为名称(应该是className)。

  • 不,您不需要指定列表创建中的项目数。这与数组不同。

  • 您的变量名称令人困惑,如果以name结尾,人们会认为变量包含名称。他们可能会认为它们是String s。