Java 中存在一个非常特殊的类—— Object 类,它是所有类的父类,即每个类都直接或间接继承自该类。在Java 中如果定义了一个类并没有继承任何类,那么它默认继承Object类。而如果它继承了一个类,则它的父类,甚至父类的父类必然是继承自Object 类,所以说任何类都是 Object 类的子类,Object 类通常被称之为超类、基类或根类。当定义一个类时,如果没有使用 extends 关键字为这个类显示的指定父类,那么该类会默认继承Object 类。
所有对象(包括数组)都实现了这个类的方法。Object 类中的常用方法如表5-1 所示。
表5-1 Object 类中的常用方法
【例5.5】下面通过一个例子来演示Object 类中toString()方法的使用,如文件5-5 所示。
文件5-5 Example05.java
执行结果
cn.xswu.chapter05.example05.Animal@136432b
在Object 类中定义了toString()方法,在该方法中输出了对象的基本信息,Object 类的toString()方法中的代码具体如下:
getClass().getName() + "@" + Integer.toHexString(hashCode());(www.xing528.com)
为了方便初学者理解上面的代码,接下来分别对其中用到的方法进行解释,具体如下:
getClass().getName()代表返回对象所属类的类名,即Animal。
hashCode()代表返回该对象的哈希值。
Integer.toHexString(hashCode())代表将对象的哈希值用16 进制表示。其中,hashCode()是Object 类中定义的一个方法,这个方法将对象的内存地址进行哈希运算,返回一个int 类型的哈希值。
【例5.6】toString()方法返回的不仅是基本信息,而且有一些特有的信息,这时重写Object的toString()方法便可以实现,如文件5-6 所示。
文件5-6 Example06.java
执行结果
这是一个稀有动物……
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。