package TestSix;
/**
* @author miaoyeye 1、創建家庭成員屬性,名字,年齡,性別,學歷,婚否,孩否,居住地
* 2、對家庭成員進行比較,如有性別、學歷一樣,則返回一樣,不判斷其他屬性 3、對創建家庭成員之後,輸出家庭成員的基本情況
<span style="BACKGROUND-COLOR: #ff6666"> * 重寫toString方法注意:
* 1必須被聲明爲public
* 2返回類型爲String
* 3方法的名稱必須爲toString,且無參數
* 4方法體中不要使用輸出方法System.out.println()
</span> */
public class FamilyName {
private String name;
private int age;
private String sex;
private String xueli;
private String wedting;
private String isson;
public FamilyName(String name, String sex, int age, String xueli,
String wedting, String isson) {
this.age = age;
this.isson = isson;
this.name = name;
this.wedting = wedting;
this.xueli = xueli;
this.sex = sex;
}
// 開始重寫方法equals();
// equals不重寫是用來判斷兩個對象是否相同的,通過重寫可以修改判斷的邏輯,他和tostring是不一樣的,
// tostring是類默認調用,equals是手動調用,其實寫個其他名字一個吊樣,裝逼的名字
public boolean equals(Object obj) {// 這裏也可以參數類型改爲FamilyName
if(obj == null ) {
return false;
}
if(this ==null){
return false;
}
<strong><span style="color:#ff0000;">if(this.getClass() != obj.getClass()){ //getclass方法是用來判斷對象類型是否相同
return false;
</span></strong> }
FamilyName a = (FamilyName) obj;
return sex.equals(a.sex) && xueli.equals(a.isson) ;
}
<span style="color:#ff0000;">public String toString() {
StringBuilder aa = new StringBuilder();// 創建類StringBuilder對象後調用
aa.append("這是劉家" + name + "是個" + sex + "今年" + age + "學歷" + xueli+ wedting + isson);
return aa.toString();// 固定格式
}
</span> public static void sop(Object obj) {
System.out.println(obj);
}
}
白菜之重寫toString()、equals()方法的注意事項
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.