構造函數(shù)是一種特殊的函數(shù)。其主要功能是用來在創(chuàng)建對象時初始化對象, 即為v對象成員變量賦初始值,總與new運算符一起使用在創(chuàng)建對象的語句中。構造函數(shù)與類名相同,可重載多個不同的構造函數(shù)。在JAVA語言中,構造函數(shù)與C++語言中的構造函數(shù)相同,JAVA語言中普遍稱之為構造方法。
使用構造器時需要記住:
1.構造器必須與類同名(如果一個源文件中有多個類,那么構造器必須與公共類同名)
2.每個類可以有一個以上的構造器
3.構造器可以有0個、1個或1個以上的參數(shù)
4.構造器沒有返回值
5.構造器總是伴隨著new操作一起調用
示例:
A.java
Java代碼
1
2
3
4
5
6
7
8
9
|
public class A{ public A(){ System.out.println( "調用了無參的構造函數(shù)" ); } public A(String mess){ System.out.println( "調用了有參的構造函數(shù)\n" + "參數(shù)內容為:" +mess); } } |
Test.java
Java代碼
1
2
3
4
5
6
|
public class Test{ public static void main(String [] args){ A a_1= new A(); //調用無參的構造函數(shù) A a_2= new A( "Hello" ); //調用有參的構造函數(shù) } } |
輸出結果:
繼承與構造函數(shù)
使用super調用父類構造器的語句必須是子類構造器的第一條語句
如果子類構造器沒有顯式地調用父類的構造器,則將自動調用父類的默認(沒有參數(shù))的構造器。如果父類沒有不帶參數(shù)的構造器,并且在子類的構造器中又沒有顯式地調用父類的構造器,則java編譯器將報告錯誤
示例:
A.java
Java代碼
1
2
3
4
5
6
7
8
9
|
public class A{ public A(){ System.out.println( "調用了A的無參構造函數(shù)" ); } public A(String mess){ System.out.println( "調用了A的有參的構造函數(shù)\n" + "參數(shù)內容為:" +mess); } } |
B.java
Java代碼
1
2
3
4
5
6
7
8
9
10
|
public class B extends A{ public B(){ System.out.println( "調用了B的無參構造函數(shù)" ); } public B(String mess){ super (mess); System.out.println( "調用了B的有參構造函數(shù)\n" + "參數(shù)內容為:" +mess); } } |
Test.java
Java代碼
1
2
3
4
5
6
|
public class Test{ public static void main(String [] args){ B b_01= new B(); B b_02= new B( "你好" ); } } |
輸出結果:
以上所述是小編給大家介紹的Java構造方法實例詳解(動力節(jié)點java學院整理),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對服務器之家網(wǎng)站的支持!