java语言规范要求equals方法具有下面的特性

java语言规范要求equals方法具有下面的特性:

(1)自反性:对于任何非空引用x,x.equals(x)应该返回true;

(2)对称性:对于任何引用x,和y,当且仅当,y.equals(x)返回true,x.equals(y)也应该返回true;

(3)传递性:对于任何引用x,y,z,如果x.equals(y)返回true,y.equals(z)返回true,那么x.equals(z)也应该返回true;

(4)一致性:如果x,y引用的对象没有发生变化,反复调用x.equals(y)应该返回同样的结果;

(5)对于任意非空引用x,x.equals(null)返回false;

时间: 2024-12-09 12:31:08

java语言规范要求equals方法具有下面的特性的相关文章

java语言规范,main方法必须声明为public

注释: 根据java语言规范,main方法必须声明为public. 当main方法不是public时,有些版本的java解释器也可以执行java应用程序.有个程序员报告了这个bug. 如果感兴趣可以查一下这个bug号码4252539.这个bug被标明"关闭",不予修复.Sun公司的工程师解释说:java虚拟规范并没有要求main方法一定是public. 好在,这个问题在 java SE1.4及以后的版本中强制main方法是public 最终的到了解决.

Java语言规范

Java基础技术细节总结 - 语言规范 Java Java 基础 开发莫忘基础,写业务写多了很多基础内容容易忘.这里将寻根溯源,总结Java语言规范和基础类中的一些细节问题.所有关于Java语言规范的细节问题,都可以参考 The Java? Language Specification, Java SE 8 Edition(JLS8) . 本文将不断补充.. 小数化为整数 Math.floor(x)返回小于等于x的最接近整数,返回类型为double; Math.round(x)相当于四舍五入,返

JAVA语言规范和API网址

Java语言规范: http://docs.oracle.com/javase/specs/ Java API: http://docs.oracle.com/javase/8/docs/api/index.html (JDK1.8) http://docs.oracle.com/javase/7/docs/api/index.html (JDK1.7) http://docs.oracle.com/javase/6/docs/api/index.html (JDK1.6)  

如何从oracle官网中下载The java language specification(java 语言规范)

第一步: 第二步: 第三步:下面这个图在这个页面的下方,所以你只要一直往下看,直到看到下图的文字为止: 第四步: 第五步: 这样你就可以成功下载该java 语言规范的pdf了. 它直接下载的网址为: http://docs.oracle.com/javase/specs/index.html

Java学习笔记(Java语言规范,API,JDK,IDE)

Java语言规范:java.sun.com/docs/books/jls 三个版本的API:J2SE J2EE J2ME 1. J2SE 客户端独立应用程序或者applet 2. J2EE 服务端应用程序 [Java Servlets&JavaServer Page] 3. J2ME 移动设备变成 JDK为Java开发提供一个开发环境(IDE) Java学习笔记(Java语言规范,API,JDK,IDE)

Java语言程序设计基础篇 方法(五)

生成随机字符 生成随机字符就是生成0到65535之间的一个随机整数,因为0<=Math.random()<1.0,必须在65535+1 (int) (Math.random() * (65535+1)) 随机生成小写字母 public class RandomCharacter { public static char getRandomCharacter(char ch1,char ch2){ return (char)(ch1 +Math.random() * (ch2 - ch1 + 1

java 语言规范 java language specifications

在线地址: https://docs.oracle.com/javase/specs/ java语言规范下载: 链接:http://pan.baidu.com/s/1miEpJwk 密码:f89v java的各种规范(JSRs by Platform):https://jcp.org/en/jsr/platform?listBy=2&listByType=platform

java基础学习总结——equals方法

永不放弃,一切皆有可能!!! 只为成功找方法,不为失败找借口! java基础学习总结——equals方法 一.equals方法介绍 1.1.通过下面的例子掌握equals的用法 1 package cn.galc.test; 2 3 public class TestEquals { 4 public static void main(String[] args) { 5 /** 6 * 这里使用构造方法Cat()在堆内存里面new出了两只猫, 7 * 这两只猫的color,weight,hei

Java 中 hashCode 和 equals 方法 小结

转载:http://www.oschina.net/question/82993_75533 hashCode()和equals()定义在Object类中,这个类是所有java类的基类,所以所有的java类都继承这两个方法. hashcode主要是set集合使用,是用于判断对象是否”可能“相等的快捷办法,以解决大集合的问题.举例来说,如果一个一万个元素的集合加入一个元素,如果是一个新元素,那么必须要equal一万次才能加入.所以采用hashcode,hashcode的思路是如果equal,则ha