構造函數在類里面定義,構造函數名一定要跟類名相同,實例化一個對象的時候,如果沒有初始化成員變量,可以不用定義構造函數,系統會自己定義好,定義了也不會影響。如果實例化對象需要初始化成員變量就一定自定義構造函數。
定義構造函數
1 class Cat 2 { 3 String name; 4 int age; 5 6 //可定義可不定義,不定義時實例化一個對象會自動定義這個構造函數 7 public Cat() 8 { 9 10 } 11 12 //定義構造函數初始化兩個成員變量 13 public Cat(String name,int age) 14 { 15 this.name = name; 16 this.age = age; 17 } 18 19 }
實例
1 public class C { 2 public static void main(String[] args){ 3 //實例化第一個對象 4 Cat c = new Cat(); 5 c.name = "小花"; 6 c.cat_cry(); 7 8 //實例化第二個對象 9 Cat c2 = new Cat("小紅","旺旺"); 10 c2.cat_cry(); 11 } 12 } 13 14 class Cat 15 { 16 String name; 17 String cry; 18 19 //可定義可不定義,不定義時實例化一個對象會自動定義這個構造函數 20 public Cat() 21 { 22 this.cry = "不會叫"; 23 } 24 //定義構造函數初始化兩個成員變量 25 public Cat(String name,String cry) 26 { 27 this.name = name; 28 this.cry = cry; 29 } 30 31 public void cat_cry() 32 { 33 System.out.println("名字:" +name + " 叫聲:" +cry); 34 } 35 36 }
運行結果