ApiDay002_02 Object中的toString() 和 equals


1.Object:对象/东西

  • 是所有类的鼻祖,所有类都直接或间接继承了Object, 万物皆对象,为了多态

  • Objec中有几个经常被派生类重写的方法:toString()和equals();

  • 调用toString()时,默认返回:类的全称@地址,没有参考意义,所以常常重写toString(返回具体数据

  • 调用equals()时,默认比较的还是==(即比较地址),没有参考意义,所以常常重写equals()来比较具体的属化

注意:

    //说明:java的类都重写了equals()了
    //--像String、StringBuilder已经重写比较内容
    //--我们自己重写的类必须自己重写equals()

2.派生类重写equals()的基本规则:

  • 两个对象必须是同一个类型,若类型不同则返口false

  • 若参数对象为null,则返回false

  • 原则上两个对象要比较对象的属性是否是相同

3.包装类:

  • java定义了8个包装类,目的就是为了解决基本类型不能直接参与面向对象开发的问题,使得基本类型可以通过包装类的实例以对象的方式--其实给8种基本类型套了个壳
  • 其中数字类型的包装类都是继承自java.lang.Number,而char和boolean的包装类直接继承自Object
  • (特殊:1. int的包装类:Integer;char的包装类:Character;)、(Byte、Short、Float、Double)