java——構造器理解

構造器理解

  1. 什麼是構造器

構造器也叫構造方法;用於對象的初始化

  1. 寫構造器注意事項

構造器名與類名一致;有返回值但是不能定義返回類型(返回值類型是本類,可以加一個空的return);

  1. 構造器的調用

通過 new 關鍵字調用,從而返回類的實例自我理解成類裏面的成員變量,因爲C語言學慣了,總有點不適應

感悟:我也是通過1、2 段代碼的對比理解了構造器

附上代碼1:

/**
 * 測試構造器(構造方法)
 * @author DREAM_yao
 * 本代碼求兩點之間的距離 p點與origin點
 */
class Point{
	double x,y;
	public double getDistance(Point p) {
		return Math.sqrt((x-p.x)*(x-p.x)+(y-p.y)*(y-p.y));
	}
	
}
public class TestConstructor {
	public static void main(String[] args) {
		Point p = new Point();/*創建一個 點(對象) */
		p.x=3;
		p.y=4;/*不用構造器,兩點通過這種方式初始化*/
		Point origin = new Point();
		origin.x=0;
		origin.y=0;
		System.out.println(p.getDistance(origin));
	}
}

附上代碼2:

/**
 * 測試構造器(構造方法)
 * @author DREAM_yao
 * 本代碼求兩點之間的距離 p點與origin點
 */
class Point{
	double x,y;
	/*兩種構造器寫法*/
	/*public Point(double x,double y) {
		this.x=x;
		this.y=y;
	}*/
    public Point(double _x, double _y) {
        x = _x;
        y = _y;  
    }
	public double getDistance(Point p) {
		return Math.sqrt((x-p.x)*(x-p.x)+(y-p.y)*(y-p.y));
	}
}
public class TestConstructor {
	public static void main(String[] args) {
		Point p = new Point(3.0,4.0);/*通過將參數傳過去,初始化*/
		Point origin = new Point(0.0,0.0);
		System.out.println(p.getDistance(origin));
	}
}

構造器(構造方法的重載)

  • 跟方法的重載一樣,所有構造器名與類名一致,只是參數的數量不同.
  • 方法的重載是指一個類中可以定義多個方法名相同,但參數不同的方法。 調用時,會根據不同的參數自動匹配對應的方法。
  • 總之就是讓編譯器能分辨出來該與哪個方法匹配就ok啦

DREAM_yao : 如果有不正確的地方,請指正!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章