我是靠谱客的博主 单薄野狼,最近开发中收集的这篇文章主要介绍Java顶级父类-Object一、     Object,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、     Object

1.        在java类的继承结构中,java.lang.Object类位于顶端。

2.        如果定义一个java类时没有使用extends关键字声明其父类,则其父类默认为java.lang.Object类。

3.        Object类型的引用变量可以指向任何类型对象

二、     toString方法

1.     概要

Ø  String        toString()

1)        Object类中的重要方法,用于返回对象值的字符串表现形式,通常用来描述对象的属性信息

2)        Object类中的返回值为:“类全名@hashCode值”。通常被称为”地址值”

2.     重写toString方法

1)        定义类时,强烈建议重写此方法,格式大多遵循:“类名[属性=值,….]”

如:

public String toString() {

                   return getClass().getName()+"[name="+name+",salary="+salary+"]";

         }

2)        java语言中很多地方会默认调用对象的toString方法

-         字符串+对象拼接操作

-         输出语句中

3)        toString方法是非常用用的调试工具

4)        jdk类库中,许多类都重写了toString方法,方便用户获取相关对象状态的必要信息

三、     equals方法

1.     概要

Ø  public boolean equals(Object obj){

return  this==obj;

}

作用为:检查两个对象是不是同一个对象,地址相同即为true,不同为false。

2.     实际开发中

一般需要重写该方法,通过比较对象的成员属性,使该方法更具有意义。即:比较两个对象的内容是否相同,相同返回true,不同返回false

3.     如何重新equals方法

1)        判断形参是否为空

2)        判断形参的引用是否与this相同

3)        判断形参的类型是不是同类型

Ø  案例:

public boolean equals(Object obj){
       if(obj == null) {
            return false;
       }
        if(this== obj) {
            return true;

        }
       if(obj.getClass()==this.getClass()) {
             Cellc = (Cell)obj;
             return c.x==this.x && c.y == this.y;
       }
         return false;
 }

四、     equals和==的区别

1.        ==用于比较变量的值,可以应用于任何类型,如果用于引用类型,比较的是两个引用变量中存储的值(地址信息),判断两个变量是否指向相同的对象

2.        equals是Object的方法,重写以后,可以用于比较两个对象的内容是否“相等”

3.        需要注意的是,Object默认的equals方法的比较规则是“==”


最后

以上就是单薄野狼为你收集整理的Java顶级父类-Object一、     Object的全部内容,希望文章能够帮你解决Java顶级父类-Object一、     Object所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(39)

评论列表共有 0 条评论

立即
投稿
返回
顶部