黑馬程序員----------怎樣寫好一個類

                                                       ----------------------android培訓java培訓、期待與您交流! ----------------------


          當我學了基本的java基礎知識之後,已能夠寫一個標準的學生類了,類裏邊包含基本的屬性和一些方法,具體有:

      1.私有的成員屬性

                爲了提高安全性,將成員變量全部私有化

      2.無參的構造方法和帶成員屬性的構造方法

                爲了防止出錯,應該將無參構造方法寫上,爲了方便創建對象的時候給成員變量賦值,提供帶有參數的構造方法

      3.公開的set\get方法

              爲了提供外界對這個對象的訪問,提供公開的訪問方法

      4.重寫hasCode()方法

              保證在使用集合對元素操作的時候出現不必要的錯誤,保證在相同\對象的情況下返回相同的哈希值

      5.重寫toString()方法

            爲了更好的提供學生的基本信息,將toString重寫,返回字符串表示當前對象的形式

      6.重寫equals()方法

           爲了方便比較兩個學生對象的比較,重寫該方法

      一下就是我寫的一個學生類,還應該加上更多的註釋,提高代碼的可讀性.

package cn.itheima;
/**
 * 學生類
 * @author 張百振
 * @version 1.0 
 * */
public class Student {
//	成員變量
	private String name;
	private int age;
//	構造方法
	public Student() {
		super();
	}
	public Student(String name, int age) {
		super();
		this.name = name;
		this.age = age;
	}
//	提供set\get訪問方法
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
//	重寫hasCode()方法
	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result + age;
		result = prime * result + ((name == null) ? 0 : name.hashCode());
//		保證相同對象返回的哈希值相同,儘量做到不同對象的哈希值不同
		return result;
	}
//	重寫equals()方法
	@Override
	public boolean equals(Object obj) {
//		判斷自反性
		if (this == obj)
			return true;
//		判斷是否爲null
		if (obj == null)
			return false;
//		判斷是否爲當前類的實例
		if (getClass() != obj.getClass())
			return false;
//		強制類型轉換
		Student other = (Student) obj;
//		分別判斷屬性是否相等
		if (age != other.age)
			return false;
		if (name == null) {
			if (other.name != null)
				return false;
		} else if (!name.equals(other.name))
			return false;
		return true;
	}
//	重寫toString方法
	@Override
	public String toString() {
		return "Student [name=" + name + ", age=" + age + "]";
	}
}


                                               ----------------------android培訓java培訓、期待與您交流! ----------------------

發佈了31 篇原創文章 · 獲贊 0 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章