类的不断抽取中,形成了一个顶层类:object
所有对象都是object的子类

如果在类的声明中未使用extends关键字指明其父类,则默认父类为java.lang.Object类


这些对象就有了一些共性的内容:

Object 类 - 图1

  • equals方法只有当对象地址相同时,才会返回true
  • getClass返回当前对象的类字节码(加载类时的代码,也可以说,生成该类的字节码文件)
  • toString其实就是对象名+hashcode()


    向上/向下转型

    Object 类 - 图2

  • 向上转型,此时涉及到多态的思想,Object中并没有age属性,所以报错。

  • 要想调用age,需要向下转型,也就是(person)obj