• Java的Object类及equals()方法与toString()方法


    equals():

        boolean(返回值类型)        equals(Object  obj);形参传的是obj类型,不管你要比较的对象是什么,都可以定义为object的子类,用多态进行向上转型,当需要用子类独有的功能时,进行向下转型。

        ==当两边是基本数据类型时,比较的是是值;

        ==当两边是引用数据类型时,比较的是地址。

        public boolean  equals   (object obj){

             if(obj==null){

                  return  false;

                    }

             if(obj==this){

                  return  true;

                    }

              //向下转型

                if(obj  instanceof  Person){

                   Person p=(Person)obj;

                    return  this.name.equals(p.name)&&this.age==p.age;    多态(obj访问name访问不到,多态的特点父类有成功,没有失败) 因为name属性是String类型,所以需要用equals方法, 而String类型早已经被jdk写好了。                

                            }

                 return  false;

                        }

        equals()方法用来比较引用数据类型的内容,但对于自己写的类成员变量的内容,需要自己重写equals()方法。

    toString()方法:

        String    toString();返回该对象的字符串表示。

        当直接打印一个对象时,默认使用toString()方法。

        自己定义的类重写toString()方法:

          @Override
              public String toString() {
                  return name+"name="+age+"age=";
                  }

        早已存在的类的toSring()重写方法:

          public String toString() {
             return "Person [name=" + name + ", age=" + age + "]";
          }

  • 相关阅读:
    Introduces the basic structure of Android ActivityManagerService
    创业的本质是资源整合
    android系统的经典文章
    GUI软件框架--窗口服务器
    学习法则:只接收能够体系化的知识
    编程思想:以什么样的方式来建模、分析、思考、解决问题
    怎么从本质上理解面向对象的编程思想?
    视图的对象化描述
    DOM= Document Object Model,文档对象模型---以对象管理组织(OMG)的规约为基础的
    GUI(UI编程)语言与面向对象、dsl
  • 原文地址:https://www.cnblogs.com/maxuefeng/p/13753508.html
Copyright © 2020-2023  润新知