构造函数在类里面定义,构造函数名一定要跟类名相同,实例化一个对象的时候,如果没有初始化成员变量,可以不用定义构造函数,系统会自己定义好,定义了也不会影响。如果实例化对象需要初始化成员变量就一定自定义构造函数。
定义构造函数
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 }
运行结果