为什么要重写toString()方法和hashcode()方法
每个自定义类都 继承自Object类。Object类的toString 方法是获取对象在内存中的值。
如果你的自定义类不需要这个信息,而是想要 如上面例子所要求的 打印各个对象的熟悉,这是就可以重写这个toString()方法实现自己要的格式。
重写 是会默认调用子类的方法。
首先说toString()、hashcode()这2个方法不是一定要重写的,所以不存在为什么要重写这2个方法的说法。那什么时候需要重写这2个方法呢:一个类对象作为参数传入到System.out.println()中时会调用这个对象的toString()方法,如果没有重写toString()方法的话,调用的就是Object类的toString()方法,那么输出信息没有实际意义。还有在debug时候中也会用到这个方法,但作用不大。调用对象的equals()方法时会调用hashcode()这个方法,如果不重写hashcode()的话一般达不到想要的效果
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。