• Java中的Object类的toString()方法,equals()方法


    Object类是所有类的父类,若没有明确使用extends关键字明确表示该类继承哪个类,那么它就默认继承Object类,也就可以使用Object中的方法:

    1.toString

    如果输出一个对象的时候,会使用Object类的toString方法,结果会输出一个对象的哈希code码,地址的字符串

    Bridge bri=new Bridge();
    System.out.println(bri);

    通过重写toString方法来输出对象的属性

        String name="子类的名字";
        int age=3;
        
        @Override
        public String toString() {
            return "Bridge [name=" + name + ", age=" + age + "]";
        }

    返回的是一个字符串

    2.equals()方法

     (1)默认的方法是比较对象的引用是否在同一地址

            Bridge bri=new Bridge();
            Bridge bri2=new Bridge();
            if (bri.equals(bri2)) {
                System.out.println("俩个对象相同");
            }else{
                System.out.println("俩个对象不相同");
            }

    如果用bri==bri2是比较的俩个引用变量,所以也是比较的内存地址

    (2)重写以后可以比较俩个对象的值是否相同

    public class Bridge{
        public int age=3;
        @Override
        public boolean equals(Object obj) {
            if (this == obj)
                return true;
            if (obj == null)
                return false;
            if (getClass() != obj.getClass())
                return false;
            Bridge other = (Bridge) obj;
            if (age != other.age)
                return false;
            return true;
        }
    }
    public class Test {
        public static void main(String[] args) {
            Bridge bri=new Bridge();
            bri.age=1;
            Bridge bri2=new Bridge();
            bri2.age=1;
            if (bri.equals(bri2)) {
                System.out.println("俩个对象相同");
            }else{
                System.out.println("俩个对象不相同");
            }
        }
    }

     equals和==详解见http://www.cnblogs.com/zhxhdean/archive/2011/03/25/1995431.html

  • 相关阅读:
    IIS配置ThinkPHP重写
    Redis安装
    ubuntu学习笔记
    PHP连接MySQL数据库SELinux中一些setsebool的用法
    centos+frp
    centos7.6安装nginx
    在CentOS 7-8上安装PHP 8.0
    centos7安装.net5.0(core)
    阿里云服务器配置清单
    阿里云服务器centos7.6安装mysql8.0.23
  • 原文地址:https://www.cnblogs.com/-beauTiFul/p/6522753.html
Copyright © 2020-2023  润新知