2024年5月16日发(作者:)
java new 对象的重写方法
在Java中,你可以通过重写`equals()`和`hashCode()`方法来比较两个对象
是否相等。如果你重写了这两个方法,那么当你使用`new`关键字创建新对
象时,Java将使用你的重写方法来比较对象。
下面是一个示例代码,演示如何重写`equals()`和`hashCode()`方法:
```java
public class Person {
private String name;
private int age;
public Person(String name, int age) {
= name;
= age;
}
Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
}
if (obj == null getClass() != ()) {
return false;
}
Person person = (Person) obj;
return age == && ();
}
Override
public int hashCode() {
return (name, age);
}
}
```
在上面的代码中,我们重写了`equals()`方法来比较两个`Person`对象是否相
等。我们首先检查两个对象是否为同一个对象,如果是,则返回`true`。然
后,我们检查传入的对象是否为`null`或者不是`Person`类型,如果是,则返
回`false`。最后,我们将传入的对象强制转换为`Person`类型,并比较两个
对象的`name`和`age`属性是否相等。如果都相等,则返回`true`,否则返回
`false`。
我们还重写了`hashCode()`方法来计算对象的哈希码。我们使用`()`方法来
计算哈希码,该方法接受任意数量的参数,并将它们作为参数传递给哈希码
计算函数。在这个例子中,我们将对象的`name`和`age`属性作为参数传递
给哈希码计算函数。
发布者:admin,转转请注明出处:http://www.yc00.com/web/1715858247a2682617.html
评论列表(0条)