Object类_基本概念

2018-03-25  本文已影响17人  落在牛背上的鸟

1. Object类的基本定义

Object类是所有类的父类,任何一个类在定义的时候没有明确的继承一个父类的话,那么他就是Object的子类。
下面两种定义的最终效果完全相同。

class Book{} class Book Extends Object{}

既然Object类是所有类的父类,那么利用Object类可以接收全部类的对象,因为可以向上自动转型。
范例:利用Object类来接收对象

class Book extends Object {}

public class ObjectDemo {
    public static void main(String[] args) {
        Object obja = new Book();   //向上转型
        Object objb = "Hello";      //向上转型
        Book b = (Book)obja;
        String s = (String)objb;
    }
}

问题:为什么在Object类里面定义一个无参构造方法?
既然Object类是所有类的父类,那么所有类对象实例化的时候,子类构造方法一定要默认调用父类的无参构造。

从严格意义上来讲(一般不遵守),任何一个简单Java类都应该覆写Object类中的如下三个方法:

  • 取得对象信息: public String toString()
  • 对象比较: public boolean equals(Object obj)
  • 取得对象HASH码:public int hashCode()
上一篇 下一篇

猜你喜欢

热点阅读