Cheug's Blog

当前位置:网站首页 / JAVA / 正文

Object类

2019-03-18 / JAVA / 991 次围观 / 0 次吐槽 /

Object类的概述

        1.Object是类层次结构的根类

        2.所有类都直接或者间接的继承Object类

        3.Object类的构造方法:public Object()

        4.子类的构造方法默认访问的是父类的无参构造方法


Object的hashCode方法

        1.Object有一个方法 public int hashCode()

        2.方法返回对象的哈希码值,默认情况下该方法会根据对象的地址来计算

        3.不同对象的hashCode()一般来说不会相同,但同一个对象的hashcode值肯定是相同的

        4.hashCode不是对象的实际地址值,可以理解为逻辑地址值


Object的getClass方法

        1.public final class getClass()

        2.返回此object运行时类

        3.可以通过class类中的一个方法,获取对象的真实类的全名称


Object的toString方法

            当在控制台输入对象的时候,默认会调用对象的toString方法

                          Student stu = new Student("小李",28);

                          System.out.println(stu);

                          System.out.println(stu.toString());

            toString方法默认输出的格式:包名.类名@16进制

                               com.cheug.model.Student@1db32342

            一般会在子类中重写toString方法,在toString方法中把属性和值打印出来


Object的equals方法

                这个方法默认是比较两个对象的地址是否一样

                一般子类也会重写equals,来改变默认的比较规则  (String这个类已经重写了Object的equals方法,方法里面的实现是比较2个字符串的内容是否一样,如果一样就返回true)

                添加自己的比较规则,比如:比较类中的属性值是否一样

          ==和equals的区别:

                                == 可以比较基本数据类型,也可以比较引用数据类型(对象地址)

                                equals只能比较引用数据类型,默认情况下比较的是两个对象的地址是否一样



Powered By Cheug's Blog

Copyright Cheug Rights Reserved.