java中的obj类方法:为何在子类中定义equals方法时,必须首调用超类的equals方法?

2025-02-23 12:59:34
推荐回答(2个)
回答1:

第一:
不知道LZ是哪里得出的结论,“在子类中定义equals方法时,必须super.超类的equals方法”不过equals也不过是一个普通的方法,子类中自己定义一个equals就是重写父类中的equals不一定要写super.squals()
第二:
Employee other=(Employee)obj1是将obj1赋值给other但是他们的类型不同,而obj1类型范围比较大,赋值的时候就会引起错误
比如:将other认为人类, obj1认为动物,现在要将obj1“装入”other中但是规格不同,要将obj1先转换为人类才能装进去,所以要转换
第三:
return name.equals(other.name)&&salary==other.salary&&hireday.equals(other.hireday)
这句话的意思是先计算name.equals(other.name)&&salary==other.salary&&hireday.equals(other.hireday)的结果,不论结果为false还是true都要返回的

对象引用:就是一个对象作为实际参数参与到运算中,运算中的改变会影响对象的属性。
对象可以直接调用域:那是因为你的属性权限设置为飞private吧,否则不能直接访问的

回答2:

一:它的意思是看看他们是不是同一个对象,是的话下面就不用比了