java中構造方法的寫法為“class class_name {public class_name(){} public ciass_name([paramList]){} …// 類主體}”,方法名必須與類名相同,各自的方法參數要不同。
本教程操作環境:windows7系統、java8版、DELL G3電腦。
構造方法是類的一種特殊方法,用來初始化類的一個新的對象,在創建對象(new 運算符)之后自動調用。Java 中的每個類都有一個默認的構造方法,并且可以有一個以上的構造方法。
Java 構造方法有以下特點:
方法名必須與類名相同
可以有 0 個、1 個或多個參數
沒有任何返回值,包括 void
默認返回類型就是對象類型本身
只能與 new 運算符結合使用
值得注意的是,如果為構造方法定義了返回值類型或使用 void 聲明構造方法沒有返回值,編譯時不會出錯,但 Java 會把這個所謂的構造方法當成普通方法來處理。
這時候大家可能會產生疑問,構造方法不是沒有返回值嗎?為什么不能用 void 聲明呢?
簡單的說,這是 Java 的語法規定。實際上,類的構造方法是有返回值的,當使用 new 關鍵字來調用構造方法時,構造方法返回該類的實例,可以把這個類的實例當成構造器的返回值,因此構造器的返回值類型總是當前類,無須定義返回值類型。但必須注意不要在構造方法里使用 return 來返回當前類的對象,因為構造方法的返回值是隱式的。
注意:構造方法不能被 static、final、synchronized、abstract 和 native(類似于 abstract)修飾。構造方法用于初始化一個新對象,所以用 static 修飾沒有意義。構造方法不能被子類繼承,所以用 final 和 abstract 修飾沒有意義。多個線程不會同時創建內存地址相同的同一個對象,所以用 synchronized 修飾沒有必要。如果不了解除 static、final 之外其他的關鍵字,教程后面會詳細講解。
構造方法的語法格式如下:
classclass_name{publicclass_name(){}//默認無參構造方法publicciass_name([paramList]){}//定義構造方法…//類主體}
在一個類中,與類名相同的方法就是構造方法。每個類可以具有多個構造方法,但要求它們各自包含不同的方法參數。
示例:
構造方法主要有無參構造方法和有參構造方法兩種,示例如下:
publicclassMyClass{privateintm;//定義私有變量MyClass(){//定義無參的構造方法m=0;}MyClass(intm){//定義有參的構造方法this.m=m;}}
該示例定義了兩個構造方法,分別是無參構造方法和有參構造方法。在一個類中定義多個具有不同參數的同名方法,這就是方法的重載。這兩個構造方法的名稱都與類名相同,均為 MyClass。在實例化該類時可以調用不同的構造方法進行初始化。
注意:類的構造方法不是要求必須定義的。如果在類中沒有定義任何一個構造方法,則 Java 會自動為該類生成一個默認的構造方法。默認的構造方法不包含任何參數,并且方法體為空。如果類中顯式地定義了一個或多個構造方法,則 Java 不再提供默認構造方法。
提示:無參數的構造方法也被稱為 Nullary 構造方法。只有編譯程序自動加入的構造方法,才稱為默認構造函數。如果自行編寫無參數、沒有內容的構造函數,就不稱為默認構造函數了(只是 Nullary 構造函數)。雖然只是名詞定義,不過認證考試時要區別一下兩者的不同。
“java中的構造方法怎么寫”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注本站網站,小編將為大家輸出更多高質量的實用文章!
本文由 貴州做網站公司 整理發布,部分圖文來源于互聯網,如有侵權,請聯系我們刪除,謝謝!
c語言中正確的字符常量是用一對單引號將一個字符括起表示合法的字符常量。例如‘a’。數值包括整型、浮點型。整型可用十進制,八進制,十六進制。八進制前面要加0,后面...
2022年天津專場考試原定于3月19日舉行,受疫情影響確定延期,但目前延期后的考試時間推遲。 符合報名條件的考生,須在規定時間登錄招考資訊網(www.zha...
:喜歡聽,樂意看。指很受歡迎?!巴卣官Y料”喜聞樂見:[ xǐ wén lè jiàn ]詳細解釋1. 【解釋】:喜歡聽,樂意看。指很受歡迎。2. 【示例】:這是...
一千萬美金等于多少人民幣?按照最新的換算比例來看,1美元約等于6.9719人民幣,1元約等于0.1434美元。但是需要注意的是,通常情況下貨幣的價值比較可以有三種,比較常用的是交換價值,也就是常說的匯率。但是人民幣和美元的匯率是波動的,需要兌換者時刻關注。截止至2021年6月19日美金與人民幣的兌匯率是1玩=6.4525人民幣,因此1000萬美金等于人民幣64525000元人民幣,但美金與人民幣的...
支付寶禁止虛擬貨幣是什么意思?支付寶禁止虛擬幣交易是因為虛擬貨幣沒有實際價值支撐,同時也沒有主權信用和商業信用,價格很容易被操縱,出現暴漲暴跌,從而嚴重侵害消費者財產安全,擾亂經濟金融正常秩序。1、首先支付寶禁止交易虛擬貨幣,是為了保護國民的財產。2、其次維護我國市場經濟的穩固發展。3、最后虛擬幣極易被用來進行洗錢等犯罪行為,危害國家安全。支付寶對虛擬貨幣轉賬交易有何嚴禁規定?充實監管缺失,確保金...
最近這段時間總有小伙伴問小編南寧金毛幼犬價格_南寧金毛幼犬價格查詢是什么,小編為此在網上搜尋了一些有關于南寧金毛幼犬價格_南寧金毛幼犬價格查詢的知識送給大家,希望能解答各位小伙伴的疑惑?!举Y料圖】南寧金毛幼犬價格隨著寵物養殖業的發展,越來越多的人開始關注幼犬的價格。而作為一種非常受歡迎的寵物犬,金毛幼犬成為了很多寵物愛好者的首選。南寧的金毛幼犬價格也備受關注,接下來我將為大家介紹南寧金毛幼犬的價格...