一个类,要么是直接继承Object,要么就是间接继承Object,如下:
class A{ } class B extends A{ } |
B 是A的子类,A是Object的子类,所以B间接继承了Object。
所以,我们可以这样说:java中的所有类,都继承了Object!
进一步,又可以这样说,所有类,都具备Object中的方法!
我们下面就学习Object当中的4个方法,学了Object的方法,就相当于把所有类的这4个方法都学了!
getClass()方法,顾名思义,getClass就是获得某个对象所属的类的名字!
toString方法的声明如下:
public String toString() {
....
}
从这个声明中可以看出,toString方法的返回值类型是String!
直接输出一个对象, 和输出这个对象的toString方法的返回值是一样的!
我们可以知道输出对象和输出对象的toString的返回值是一样的! 但是我们又看出,不同对象的toString方法的返回值的内容是不同的! 比如Date的toString得到的是时间,String的toString的得到就是字符串的内容,Test的toString得到的是对象在内存中的地址。
为什么不同类的toString方法的返回内容不一样呢? 因为toString是Object的方法,其他类都直接或间接地继承了Object,系统内置的类,都重写了Object的toString方法。
易悦(深圳)科技有限公司
让快乐更简单
微信:EJoyYOJOY
微博:http://weibo.com/EJoyYOJOY
官网:http://www.ejoytec.com/