package?TelP;
public?class?TelPhone?{
//手機(jī)001
public?class?Telp1{
public?int[]?withH1=?{600,800};
public?float?cpu1=1.4f;
public?float?ram1=2.0f;
}
//手機(jī)002
public?class?Telp2{
public?int[]?withH2=?{600,800};
public?float?cpu2=1.4f;
public?float?ram2=2.0f;
}
public?static?void?main(String[]?args)?{
//?TODO?Auto-generated?method?stub
TelPhone?te?=?new?TelPhone();
Telp1?te1=te.new?Telp1();
Telp2?te2=te.new?Telp2();
if(te1.equals(te2))
System.out.println("手機(jī)配置相同");
else
System.out.println("手機(jī)配置不同");
}
}
2019-01-12
你需要重寫(xiě)內(nèi)部類(lèi)的equals方法,不然比較的只是兩個(gè)對(duì)象的引用地址(這是new的兩個(gè)對(duì)象, 引用地址都是獨(dú)自開(kāi)辟的, 引用地址必然不同)。而你要比較的是兩個(gè)對(duì)象的實(shí)體數(shù)據(jù)是否一致, 所以必須重寫(xiě)equals方法。
2019-08-29
telp2 不是應(yīng)該創(chuàng)建為telp1的子類(lèi)嗎? 然后在在子類(lèi)里用equals方法比較。最后在man方法 用telp2再創(chuàng)建不同的對(duì)象進(jìn)行比較?