(1)構造方法
物件都有構造方法,如果沒有,則新增乙個default方法
抽象類有構造方法
(2)呼叫本類和父類
this 本類其他
super父類
父類所有構造方法都得到呼叫
例:
classa}
class
bextends
a //不能通過編譯
}
1.
class
a a(int a){}}2.
classa3.
class
bextends
a}
(3)建立物件時初始化
p = new person()
}
(4)構造方法執行過程
先父類構造,再本類賦值,最後執行構造方法中的語句
public
class
mydate
}class
person
}class
student
extends
person
}結果:
this.name=a,this.age=-1
person() this.name=b,this.age=18
this.name=b,this.age=18,this.school=pku
student() this.name=b,this.age=18,this.school=q
Java 物件構造與初始化
如果沒有this及super,則編譯器自動加上super 即呼叫直接父類不帶引數的構造方法。任何子類必須先或顯示或隱式地呼叫直接父類的構造方法。class constructcallthisandsuper class person person string name,int age class ...
建構函式初始化列表和初始化函式
其實並沒有所謂的初始化函式的概念,本文中的初始化函式只是說明在函式體內進行賦值。而初始化列表才是真正意義上的物件初始化。使用初始化列表效率會高一點。c 規定,物件的成員變數的初始化動作發生在進入建構函式本體之前。在建構函式體內只是賦值,並不是初始化。請看下面這個栗子 class base publi...
C 初始化器和建構函式初始化器
初始化器分為物件初始化器和集合初始化器。下面一一介紹。物件初始化器 物件初始化器的作用,簡單點說就是可以使我們初始化乙個類的 變得更簡潔。比如下面這個類 class person public int age public string address 我們要初始化它並對它賦值的話通常要這樣 per...