intellij idea中怎么覆盖tostring(),hashcode(),equals()?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了intellij idea中怎么覆盖tostring(),hashcode(),equals()?相关的知识,希望对你有一定的参考价值。

在java中,除了基本类型之外的所有类型,包括数组类型,都是Object类的子类。这些类都或继承或覆盖了Object类中的equal,hashCode和toString方法。在自定义类的时候,为了实现比较、在集合中查找、显示类信息等功能,也需要用到这些方法,默认情况下这些方法都继承自Object,但有的时候需要覆盖掉他们来实现特殊的功能。

实现equal()方法:
1、该方法用于比较该对象是否和目标对象相同,在Object类中,这个方法将判断两个对象是否具有相同的引用(等价于用“==”比较两个对象),有时我们需要判断两个对象的状态来决定他们是否相同,就需要有自己的equal方法。
2、equals方法实现的规范要求:主要有自反性,对称性,传递性,一致性,对任意非空引用x,x.equals(null)应该返回false。
3、 编写自己的equals方法:

@Override public boolean equals(SuperClass otherObject)public boolean equals(SuperClass otherObject)    //比较两个对象的引用是否相同
if(this==otherObject)        return ture;    //检测otherObject是否为null
if(otherObject==null)        return false;    //检测otherObject是否和该对象是同一个类
if(getClass()!==otherObject.getClass())        return false;    //检测otherObject是否是该类或者它的子类(当继承父类equals方法时)
//if(!(otherObject instanceof ClassName))
//  return false;
ClassName other=(ClassName) otherObject;    return filed1==other.field1             //null值保护
&&Object.equals(field2,other.field2)
&&...;
1234567891011121314151617181920

4、覆盖超类的方法应该有相同的签名,如果由超类来决定(子类继承超累的equals方法),可以使用instanceof来进行检测,这样就可以实现不同子类之间的比较;如果比较相等的判定由子类来决定,可以用getClass来检测,同时应当包含调用super.equals(other)。Object.equals(a,b)方法比较两个非基本类型对象,包含了他们可能为null的情况,都为null时返回true,只有一个为null返回false,否则返回a.equals(b);

参考技术A

intellij idea中怎么覆盖Java规范中提倡的tostring(),hashcode(),equals(),以及所有的get/set方法。

intellij idea怎么安装插件

1、首先打开intellij idea软件,点击菜单栏的“File”下的"Settings", 或是使用快捷键Ctrl+Alt+S快速打开。

2、打开的设置菜单中找到“Plugins”,点击右侧的选择“Brows reporsitories”按钮。

3、然后在搜索框中输入自己需要的插件,然后点击右侧的绿色“Install” 安装即可。

4、最后安装完后,在右侧点击一下“Restart IntelliJ IDEA”重新启动软件插件就安装完成了。

参考技术A 以IntelliJ IDEA 11.0.1安装python为例:

(1)下载python插件
其它插件下载,进入setting > plugins > browse repositorits 搜索你要下载的插件名称,右侧可以找到下载地址。

(2)复制插件安装目录:把下载的插件复制到IntelliJ IDEA安装程序的plugins文件夹中。注意文件层次;
插件名 > lib,help,helpers;

(3)安装插件:进入setting > plugins > install plugin from disk 找到步骤(2)中的文件复制位置,定位到IntelliJ IDEA安装程序的plugins>python>lib>python.jar 点击ok完成;

提示重启IntelliJ IDEA 11.0.1。

新建一个web项目,看到 new > python file

安装成功。本回答被提问者和网友采纳
参考技术B 第一步:进入官网下载intellij idea,download-->选择操作系统-->选择版本;
第二步:双击安装文件,进入安装界面;
第三步:根据需要修改安装路径;
第四步:勾选添加桌面图标;
第五步:等待安装完成;
第六步:安装完成;
参考技术C File-》Setting ->plugin ->browse 搜索插件

以上是关于intellij idea中怎么覆盖tostring(),hashcode(),equals()?的主要内容,如果未能解决你的问题,请参考以下文章

idea怎么将库添加到类路径

Intellij IDEA run coverage之覆盖率测试

IntelliJ IDEA 的零覆盖:带有 Spock 单元测试的 Grails

Intellij idea Junit单元测试不显示代码覆盖率

intellij idea怎么安装插件

intellij idea怎么关闭自动更新