構造器 構造方法 的新手理解

2021-10-05 06:35:04 字數 1969 閱讀 2880

一、構造器的定義與作用

1.構造器的特徵:

具有和類相同的名稱;不含返回值 ;如果沒有構造器,系統預設提供。

2.作用:

為建立的物件執行初始化

3.語法格式:

《修飾符》《類名》([《引數列表》])         //無參構造方法

public student(string name,int age)               //有參構造方法

4.構造器中的this和super

this:哪個物件呼叫構造器就指向哪個物件!

super:呼叫父類的構造器;

5.構造器中的繼承及呼叫

執行子類構造器時一定會呼叫父類構造器。如果要呼叫有參的父類構造器,就必須在子類構造器的第一行寫上super()

具體例子如下!!!

型別一:子類父類都包含有參構造器和無參構造器,建立乙個無參構造器的物件

public class demo03zi extends demo03fu 

public demo03zi(int num)

public static void main(string args)

}public class demo03fu

public demo03fu(int num)

}輸出:

父類無參構造器

子類無參構造器

型別二:子類父類都包含有參構造器和無參構造器,建立乙個有參構造器的物件

public class demo03zi extends demo03fu 

public demo03zi(int num)

public static void main(string args)

}public class demo03fu

public demo03fu(int num)

}輸出:

父類無參構造器

子類有參構造器

型別三:子類父類都包含有參構造器和無參構造器,建立乙個有參構造器的物件。在有參建構函式下使用帶參super;

public class demo03zi extends demo03fu 

public demo03zi(int num)

public static void main(string args)

}public class demo03fu

public demo03fu(int num)

}輸出:

父類帶參構造器

子類有參構造器

型別四:子類包含有參構造器和無參構造器,父類僅有乙個有參構造方法,建立乙個無參構造器的物件。

public class demo03zi extends demo03fu 

public demo03zi(int num)

public static void main(string args)

}public class demo03fu */

public demo03fu(int num)

}輸出:

報錯!!

原因:因為創造物件的構造器是無參的,但是在父類構造器中又找不到無參構造器。

其餘的差不多啦,掌握繼承中構造器的執行順序。及this和super的用法就好了;再看個其他的

//條件是子類有參無參構造器都有,父類僅有有參。建立帶參的物件

public class demo03zi extends demo03fu

public demo03zi(int num)

public static void main(string args)

}public class demo03fu */

public demo03fu(int num)

}輸出:

父類帶參構造器

子類有參構造器

構造器(構造方法)

知識點 1.乙個類即使什麼都不寫,他也會存在乙個方法 構造器 構造方法 2.構造方法的名字必須與定義他的類名完全相同,沒有返回型別,甚至連void也沒有。3.構造方法的呼叫是在建立乙個物件時使用new操作進行的。構造方法的作用是初始化物件。4.有參構造 一旦定義了有參構造,無參一定要寫出來!pack...

構造器(構造方法)

題目 編寫兩個類 和 test,其中 類中宣告私有的底邊長base和高height,同時宣告公共方法訪問私有變數。此外,提供類必要的構造器。另乙個類中使用這些公共方法,計算三角形的面積。回答 public class test public int a,int b public void setba...

構造方法構造器 構造方法過載

一 構造方法 構造器 定義 1 構造方法就是類似於方法,但是構造方法沒有返回值 不用也不能寫void 2 構造方法名字必須與類名相同 3 構造方法不能被static修飾 構造方法屬於物件,static屬於類 4 一旦定義帶參的建構函式,程式將不再為你自動建立空構造器。作用 可以在new物件的同時傳入...