一:什么是Object
类
Java
中有一个比较特殊的类,就是 Object
类,它是所有类的父类,如果一个类没有使用extends
关键字明确标识继承另外一个类,那么这个类就默认继承 Object
类。因此,Object
类是 Java 类层中的最高层类,是所有类的超类。换句话说,Java 中任何一个类都是它的子类。由于所有的类都是由 Object
类衍生出来的,所以 Object
类中的方法适用于所有类。
二:toString()方法;
在OBject类里面定义toString()方法的时候返回的对象的哈希code码(对象地址字符串)。
如果我们在代码里直接输出一个对象,你会发现它输出的这个对象在内存中的地址,我们把它称为哈希码,它是通过哈希算法生成的一个字符串,是用来唯一区分对象的,可以想象为身份证号。
举一个例子:
Initail主函数:
package com.test;
public class Initail {
public static void main(String[]args){
Dog dog = new Dog();//这里我们定义了一个dog对象
System.out.println(dog);//我们如果现在输入dog的值
}
}
Dog类:
package com.test;
//Dog对象继承于Animal类
public class Dog extends Animal{
public int age = 20;
public Dog(){
System.out.println("Dog类执行了");
}
}
Animal类:
package com.test;
//Animal类并没有明确表明它继承于那个类,他就相当于继承了Object类
public class Animal extends Object{
public int age=10;//为属性赋初值
public String name;
public Animal(){
System.out.println("Animal类执行了");
}
}
运行结果为:
此时我们看到它输出的是dog类的包名+dog对象在内存中的地址。