目前,我正在学习如何用Java编程,而且我目前正在尝试实现一个基本的链接列表,以进一步了解该语言与我在学校学到的C ++有何不同。现在,我试图理解为什么这个词"对象"这里是用的,它意味着什么。
private class ListNode {
private Object data;
private ListNode next;
}
我知道接下来是我声明的ListNode类型,但是我不确定Object类型是什么。它是在Java库中找到的,还是默认类型?我一直在研究这个,我发现的所有内容都是关于原始数据类型的页面等。
答案 0 :(得分:0)
来自Java API documentation on Object:
Class Object是类层次结构的根。每个班级都有 对象作为超类。所有对象,包括数组,都实现了 这类方法。
所有对象都隐式地从Object
继承。所以你的ListNode
类相当于:
private class ListNode extends Object {
private Object data;
private ListNode next;
}
像toString()这样的方法是从Object父类继承的。
在您的特定情况下,您使用的是Object类型,因为您不知道列表将包含哪种数据,并且因为所有类都是“全包”类型的对象。有一种更好的方法可以在Java中处理这种情况,称为generics,但你可能还没有达到这一点。要记住未来的事情。