本文實例講述了Java的無參構(gòu)造函數(shù)用法。分享給大家供大家參考,具體如下:
江達(dá)網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián),江達(dá)網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為江達(dá)成百上千提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)網(wǎng)站建設(shè)要多少錢,請找那個售后服務(wù)好的江達(dá)做網(wǎng)站的公司定做!
一 點睛
1 如果一個類沒有定義任何構(gòu)造函數(shù),那么該類會自動生成1個默認(rèn)的構(gòu)造函數(shù)。默認(rèn)構(gòu)造函數(shù)沒有參數(shù)。
2 如果一個類定義了構(gòu)造函數(shù),但這些構(gòu)造函數(shù)都有參數(shù),那么不會生成默認(rèn)構(gòu)造函數(shù),也就是說此時類沒有無參的構(gòu)造函數(shù)。
通過兩個例子來說明。
二 使用無參構(gòu)造函數(shù)的錯誤
1 代碼
public class ConstructWithNoPara { public static void main( String[] args ) { Person p = new Person(); // 此行有錯誤,沒有不含參數(shù)的構(gòu)造函數(shù) p.talk(); } } class Person { private String name; private int age; public Person( int age ) { name = "Yuhong"; this.age = age; } public Person( String name, int age ) { this.name = name; this.age = age; } public void talk() { System.out.println( "我叫:" + name + " 我今年:" + age + "歲" ); } }
2 運行
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
The constructor Person() is undefined
at ConstructWithNoPara.main(ConstructWithNoPara.java:18)
三 正確使用無參構(gòu)造函數(shù)
1 代碼
public class ConstructOverload { public static void main( String[] args ) { Person p = new Person(); p.talk(); } } class Person { private String name; private int age; public Person() { name = "cakin"; age = 22; } public Person( int age ) { name = "kehr"; this.age = age; } public Person( String name, int age ) { this.name = name; this.age = age; } public void talk() { System.out.println( "我叫:" + name + " 我今年:" + age + "歲" ); } }
2 運行
我叫:cakin 我今年:22歲
更多java相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java面向?qū)ο蟪绦蛟O(shè)計入門與進階教程》、《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點技巧總結(jié)》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總》
希望本文所述對大家java程序設(shè)計有所幫助。