"= =" 和equals()的区别
这个时候我们可能就会产生疑问了,不是说equals()比较的堆内存内容吗,为什么stu1.equals(stu2)的结果是false呢?看过API文档应该了解,equals()方法是Object这个类中,而String这个类是重写过这个方法的(在这里就不贴代码啦,大家可以自己去看文档),所以在String类中的equals()方法是比较两个变量的值。而我们自定义的Student类中,equals()方法是从Object这个继承过来的,也就是比较两个对象是否相等,很明显都是用new关键字来定义,肯定是不同的,所以结果为false。
<!--EndFragment-->