特點: 1、函數名與類名相同。
2、不用定義傳回值類型。
3、沒有具體的傳回值。
P.S.
在建構函式前面加上傳回值就只是一般函數了。
作用:給對象進行初始化。
樣本:
class Person{ private String name ; private int age ; //定義一個Person類的建構函式 //建構函式,而且是空參數的 Person(){ System.out.println("person run"); } public void speak(){ System.out.println(name + ":" + age); }}class ConsDemo{ public static void main(String[] args){ //建構函式:構建創造對象時調用的函數 //作用:可以給對象進行初始化 Person p = new Person(); p.speak(); }} P.S.
1、一般函數和建構函式什麼區別呢。 建構函式:對象建立時,就會調用與之對應的建構函式,對對象進行初始化。
一般函數:對象建立後,需要函數功能時才調用。
建構函式:對象建立時,會調用並且只調用一次。
一般函數:對象建立後,可以被調用多次。
2、建立對象都必須要通過建構函式初始化。
一個類中如果沒有定義過建構函式,那麼該類中會有一個預設的空參數建構函式。
如果在類中定義了指定的建構函式,那麼類中的預設建構函式就沒有了。
3、多個建構函式是以重載的形式存在的。
樣本:
class Person{ private String name ; private int age ; Person(){ name = "baby" ; age = 1; System.out.println("person run"); } //如果有的孩子一出生就有名字 Person(String n){ name = n; } //如果有的孩子一出生就有名字和年齡 Person(String n, int a){ name = n; age = a; } public void speak(){ System.out.println(name + ":" + age); }}class ConsDemo{ public static void main(String[] args){ Person p1 = new Person(); p1.speak(); Person p2 = new Person("旺財" ); p2.speak(); Person p3 = new Person("小強" ,10); p3.speak(); }}