我在这里有这个对象:
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对象和prev如上所示,我只是将构造函数留空吗?这样可以吗?我粘贴了课程的其余部分以显示功能,如果这无论如何都会有帮助。再次感谢!
在Java中,new
关键字返回对新构造对象的引用。因此,在
String s = new String("foo");
变量s
的值是对String对象的引用。然后,如果你要做类似的事情
String t = s;
然后你将t
设置为与s
相同的值,也就是说,它现在是对同一个对象的引用。
目前还不清楚你要完成什么,但创建对象的最简单方法是使用类名ItemInfo
和new
关键字。例如,您可以使用这行代码并全局声明对象引用:
ItemInfo myObj= new ItemInfo();
您可以创建这样的新实例
ItemInfo myObj = new ItemInfo("name", "tag", "location", "local", 0.0);
或者,做这样的事情: -
public class ItemInfoNode{
ItemInfo myObj;
public ItemInfoNode(ItemInfo myObj){
this.myObj = myObj;
}
这看起来像是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;
}