zoukankan      html  css  js  c++  java
  • Java重写equals

    equals()的参数可以为null。API对应的定义如下:

    public  boolean equals(Object obj)

    其比较规则为:当参数obj引用的对象与当前对象为同一个对象时,就返回true,否则返回false。

    如果传入的参数为null,表示obj没有引用的对象,那当前对象与其比较还有意义么?因为能够调用equals这个方法的对象,最重要的一个前提就是当前对象不能为null,否则就会报那个经典的java.lang.NullPointerException。

    @Override
          public boolean equals(Object obj){
               if(this == obj){//判断两个对象数否相等
                     return true;
                   }
                if(obj==null){//判断参数对象是否为空
                     return false;
                   }
                if(!(obj instanceof Course)){//判断参数的类型
                     return false;
                    }
                Course course = (Course)obj;

                //判断要满足的条件
                  if(this.name ==null){
                  if(course.name==null){
                   return true;
                     }else{
                    return false;
                    }
                       }else{
        if(this.name.equals(course.name))
          return true;
        else
          return false;
        }
       }

  • 相关阅读:
    mysql常用基本命令
    mysql8.0.13下载与安装图文教程
    k8s ingress 增加跨域配置
    Jenkins 备份恢复插件 thinBackup 使用
    k8s HA master 节点宕机修复
    nginx 跨域问题解决
    mongodb 3.4.24 主从复制
    k8s 线上安装 jenkins并结合 jenkinsfile 实现 helm 自动化部署
    k8s helm 运用与自建helm仓库chartmuseum
    centos6 源码安装 unzip
  • 原文地址:https://www.cnblogs.com/dukc/p/4747340.html
Copyright © 2011-2022 走看看