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

来源:9-9 Java 中的 Object 类 Ⅱ

天涯CCY

2018-03-04 15:10

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;

}

         

}


写回答 关注

1回答

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

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

    天涯CCY

    非常感谢!

    2018-03-04 15:46:17

    共 2 条回复 >

Java入门第二季 升级版

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

530557 学习 · 6091 问题

查看课程

相似问题