java equals方法使用(精选两篇)
java技术具有卓越的通用性、高效性、平台移植性和安全性。下面是读文网小编为您带来的javaequals方法使用,希望对大家有所帮助。
java的优势:
与传统程序不同,Sun 公司在推出 Java 之际就将其作为一种开放的技术。全球数以万计的 Java 开发公司被要求所设计的 Java软件必须相互兼容。“Java 语言靠群体的力量而非公司的力量”是Sun公司的口号之一,并获得了广大软件开发商的认同。这与微软公司所倡导的注重精英和封闭式的模式完全不同。
Sun 公司对 Java 编程语言的解释是:Java 编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和静态的语言。
Java 平台是基于 Java 语言的平台。这样的平台非常流行。因此微软公司推出了与之竞争的.NET平台以及模仿Java的C#语言。
Java是功能完善的通用程序设计语言,可以用来开发可靠的、要求严格的应用程序。
java equals方法使用:
1)显示参数命名为otherObject,稍后需要将它转换成另一个叫做other的变量。
2)检测this与otherObject是否引用同一个对象:
if(this == otherObject) return true;
这条语句只是一个优化。实际上这是一种经常使用的形式。
3)检测otherObject是否为null,如果为null,返回false。这项检测很必要。
if(otherObejct == null) return false;
比较this与otherObject是否为属于同一个类。如果equals的语义在每个子类中有所改变,就使用getClass检测:
if(getClass() != otherObject.getClass()) return false;
如果所有的子类都拥有统一的语义,就使用instanceof检测:
if(!(otherObejct instanceof ClassName)) return false;
4)将otherObject转换为相应的类类型变量:
ClassName other = (ClassName)otherObject;
5)现在开始对所有需要比较的域进行比较了。使用==比较基本类型域,使用equals比较对象域。如果所有的域都匹配,就返回true,否则返回false。
return field == other.field&&field.equals(other.field)&&...;
如果在子类中重新定义equals,就要在其中包含调用super.equals(other)。