一切类的基类——Object:
所有类都继承于Object类。
覆盖toString()方法:
我们直接调用println()时,其输出方法通常不是我们想要它输出的形式,例如直接输出对象时,它输出的是对象的首地址,要想更改其输出方式,我们可以通过在当前类下覆盖toString()方法达到目的。
@Override
public String toString() {
return this.getName();
}
在cat类下通过覆盖toString()方法,当再次在demo中调用println()时:
System.out.println(“I am ” + cat);
其输出就不是首地址了,而是“I am cat”。
实际:类对象想String类型自动转换,本质上是调用了对象的toString()方法。
即“I am ” + cat 等价于 "I am " + cat.toString()
进一步说,在没有覆盖toString前,其调用的方法时Object的默认处理方法。
强调:类对象想String类型的转换,实质上是由JVM自动调用了toString()方法实现的。
由于八大基本类型不是类类型,因此,上述关于toString()的描述不适用八大基本类型。
@Override
这个是java的注解,表示,下面的方法是覆盖基类的方法。