java 什么情况下需要重写equals(),hashcode()方法 JAVA中关于重写equals()方法要重写hashcode...

java \u4ec0\u4e48\u60c5\u51b5\u4e0b\u9700\u8981\u91cd\u5199equals(),hashcode()\u65b9\u6cd5

\u5f53\u4f60\u8981\u6bd4\u8f83\u4e00\u4e2a\u7c7b\u5f97\u4e24\u4e2a\u5bf9\u8c61\u662f\u4e0d\u662f\u76f8\u540c\u7684\u65f6\u5019:\u6bd4\u5982\u7c7bA
\u7684\u4e24\u4e2a\u5bf9\u8c61
a1\u548ca2\uff0c\u5f53\u4f60\u8981\u8fd9\u4e48\u5199a1.equals(a2);\u7684\u65f6\u5019A\u5c31\u597d\u91cd\u5199equals\u65b9\u6cd5:\u5f53\u4f60\u8981\u628a\u8fd9\u4e24\u4e2a\u5bf9\u8c61\u5f53\u6210hashTable\u7684key\u65f6\u5c31\u8981\u91cd\u5199hashcode();\u65b9\u6cd5

2\u4e2a\u4e4b\u95f4\u6ca1\u6709\u4ec0\u4e48\u5fc5\u987b\u91cd\u5199\u7684\u5173\u7cfb\u5427\u3002

当你要比较一个类得两个对象是不是相同的时候:比如类A
的两个对象
a1和a2,当你要这么写a1.equals(a2);的时候A就好重写equals方法:当你要把这两个对象当成hashTable的key时就要重写hashcode();方法

扩展阅读:java入门网站 ... javac exe是什么 ... 重载与重写的区别 java ... java开发具体做什么 ... 重写方法名可以相同吗 ... java重写是什么意思 ... javaw exe ... 为什么要重写 ... java静态方法可以被重写吗 ...

本站交流只代表网友个人观点,与本站立场无关
欢迎反馈与建议,请联系电邮
2024© 车视网