问答详情
源自:9-9 Java 中的 Object 类 Ⅱ

用重写equals()方法比较两个手机,属性都相同,运行结果怎么是不同的

package com.imooc;


public class infial {


public static void main(String[] args) {

// TODO Auto-generated method stub

Telephone tele=new Telephone();

tele.size=10;

tele.CPU=10;

tele.Memory=10;

Telephone tele1=new Telephone();

tele.size=10;

tele.CPU=10;

tele.Memory=10;

if(tele.equals(tele1)){

System.out.println("两个对象是相同的");

}

else{

System.out.println("两个对象是不相同的");

}

}


}







package com.imooc;


public class Telephone {

         int size;

         int CPU;

         int Memory;

@Override

public boolean equals(Object obj) {

if (this == obj)

return true;

if (obj == null)

return false;

if (getClass() != obj.getClass())

return false;

Telephone other = (Telephone) obj;

if (CPU != other.CPU)

return false;

if (Memory != other.Memory)

return false;

if (size != other.size)

return false;

return true;

}

         

}


提问者:天涯CCY 2018-03-04 15:10

个回答

  • 夏天吹过的风
    2018-03-04 15:39:15
    已采纳

    问题在给第二个tele1你写成了tele