Object类equals方法与重写

来源:互联网 发布:php 环境 编辑:程序博客网 时间:2024/05/29 16:43
public class TestEquals{public static void main(String[] args){Cat c1 = new Cat(1, 2, 3);Cat c2 = new Cat(1, 2, 3);System.out.println(c1 == c2);//用==比较的是两个对象的引用是否相同System.out.println(c1.equals(c2));//object提供的equals方法同==功能(其他类不一定,比如String类已经对该方法重写), 故输出falseCat c3 = c1;System.out.println(c1 == c3);//c1 和c3 的确是指向同一个对象,引用相同,故输出trueSystem.out.println(c1.equals(c3));}}class Cat{int color;int height,weight;public Cat(int color, int height, int weight){this.color = color;this.height = height;this.weight = weight;}/*public boolean equals(Object obj){if(obj == null) return false;if(obj instanceof Cat){Cat c = (Cat)obj;if(c.color == this.color && c.height == this.height && c.weight == this.weight){return true;}}return false;}*/}
                                             
0 0
原创粉丝点击