以下函数返回一个内存地址而不是它应该的实际Node,任何输入?:
public Node getNode(){
Node nextnode = new Node(this.title, this.disX, this.disY);
return nextnode;
}
当被称为:
AcNode aNode = new AcNode("Test", 0.5, 0.6)
System.out.println("See next node" + aNode.getNode());
AcNode是Node的子类,使用与super相同的构造函数。有什么帮助吗?
答案 0 :(得分:0)
当您将对象连接到String时,就像在那里一样,将调用toString
方法。默认情况下,如果未定义toString
方法,则会在内部调用toString
方法,该方法将打印指向对象的“内存地址”。因此,您需要在toString
类中定义一个Node
方法,该方法返回您在这种情况下要查找的信息。
或者,您可以调用getter而不是依赖toString
方法:
aNode.getNode().getIdentifier()
或调用任何getter方法(getIdentifier只是一个例子)。