创建对象的引用

时间:2013-02-19 05:27:10

标签: java object reference

我在这里有这个对象:

public class ItemInfo {

    String productName;
    String rfidTagNumber;
    String originalLocal;
    String currentLocal;
    double productPrice;

    public ItemInfo(String name, String tag, String origLoc, String curLoc, double price) {
        productName = name;
        rfidTagNumber = tag;
        originalLocal = origLoc;
        currentLocal = curLoc;
        productPrice = price;
    }

我需要在这里创建并引用ItemInfo对象:

public class ItemInfoNode {

    ItemInfoNode next;
    ItemInfoNode prev;

    public ItemInfoNode(){

    }

    public void setInfo(ItemInfo info) {

    }

    public ItemInfo getInfo(){
        return null;    
    }

    public void setNext(ItemInfoNode node) {

    }

    public void setPrev(ItemInfoNode node) {

    }

    public ItemInfoNode getNext() {
        return null;
    }

    public ItemInfoNode getPrev() {
        return null;
    }
}

我知道如何制作新物品,但我不太确定这是否正确所以我省略了这一行,我该如何创建一个参考?

编辑:只是另一个小侧边栏,我接下来有两个ItemInfoNode对象,如上所示,我只是将构造函数留空了吗?这样可以吗?我粘贴了课程的其余部分以显示功能,如果这无论如何都会有帮助。再次感谢!

4 个答案:

答案 0 :(得分:4)

在Java中,new关键字返回对新构造对象的引用。因此,在

String s = new String("foo");

变量s的值是对String对象的引用。然后,如果你要做类似

的事情
String t = s;

然后您将t设置为与s相同的值,也就是说,它现在是对同一对象的引用。

答案 1 :(得分:0)

目前还不清楚您要完成什么,但创建对象的最简单方法是使用类名ItemInfonew关键字。例如,您可以使用这行代码并全局声明对象引用:

ItemInfo myObj= new ItemInfo();

答案 2 :(得分:0)

您可以像这样创建一个新实例

ItemInfo myObj = new ItemInfo("name", "tag", "location", "local", 0.0);

或者,做这样的事情: -

public class ItemInfoNode{

        ItemInfo myObj;

        public ItemInfoNode(ItemInfo myObj){

        this.myObj = myObj;

}

答案 3 :(得分:0)

这看起来像LinkedList的实现。所以你想要做的是使用setter存储对下一个节点和前一个ItemInfoNode的引用 - 即setNext()和setPrev()方法,通过存储参数(它们是引用)作为你的类变量next和prev你已经宣布。然后在你的getter中 - 即getPrev()和getNext()你可以返回你存储的变量。

public void setNext(ItemInfoNode node){
    next = node;
}
public void setPrev(ItemInfoNode node){
    prev = node;
}
public ItemInfoNode getNext(){
    return next;
}
public ItemInfoNode getPrev(){
    return prev;
}