equsal方法提供对象是否”相等“的逻辑。如;
不管你怎么使C1 C2他们相同,输出的都是false,因为这是比较的两个引用。
加一句这个,输出还是false,为什么了?因为你没定义equals方法,他默认的是比较两个引用是不是同一个指向,所以还是错误,和上面的c1==c2一样。所以我们要重新定义equals,如;
重写equals方法,才能比较c1和c2属性是否相等。其中的instanceof 运算符是用来在运行时指出对象是否是特定类的一个实例。然后Cat c = (Cat)obj;类型强制转换,这个方面不是很清楚。