为了账号安全,请及时绑定邮箱和手机立即绑定

student.courses.contains(course2)有疑问

这句话是调用Student类的成员courses(一个Set)的contains方法

contains方法本质是调用courses中各个Course类对象的hashcode与equals方法与传入的对象(course2)进行比较

所以要重写Course类中的hashcode方法与equals方法,这么理解对吗?

还有courses中存储的都是Course类对象(因为用泛型规定的),如果不用泛型规定,并且在Set中存储的元素超过1种类的对象(比如有自己创建的Teacher类型还有Course类型)

那是不是这2种类的hashcode方法和equals方法都需要重写?

请各位dalao指点

正在回答

1 回答


如果不用泛型规定,那默认泛型是Object对象,根据java多态的特性,如果子类重写方法,那调用时方法是子类的方法。

希望对你有帮助

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

student.courses.contains(course2)有疑问

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信