Java中自動生成構(gòu)造方法詳解
Java中自動生成構(gòu)造方法詳解
每個類在沒有聲明構(gòu)造方法的前提下,會自動生成一個不帶參數(shù)的構(gòu)造方法,如果類一但聲明有構(gòu)造方法,就不會產(chǎn)生了.證明如下:
例1:
class person
{
person(){System.out.println("父類-person");}
person(int z){}
}
class student extends person
{
// student(int x ,int y){super(8);}
}
class Rt
{
public static void main(String[]args)
{
student student_dx=new student();//創(chuàng)建student類的對象
}
}
//輸出結(jié)果:父類-person
例2:
class person
{
person(){System.out.println("父類-person");}
person(int z){}
}
class student extends person
{
student(int x ,int y){super(8);}
}
class Rt
{
public static void main(String[]args)
{
student student_dx=new student(3,4);//創(chuàng)建student類的對象
}
}
//沒有輸出結(jié)果
例1說明:student類自動生成student() {super();}(前提是:student類沒有聲明構(gòu)造方法的前提下) 'super()'是用來調(diào)用父類的構(gòu)造方法.
例2中的person()方法沒有被調(diào)用,說明student類沒有產(chǎn)生student(){super();}方法.這是因為student類已經(jīng)聲明構(gòu)造方法,默認(rèn)的那個不帶參數(shù)的構(gòu)造方法就不產(chǎn)生了.
再舉例:
class person
{
person(int z){}
}
class student extends person
{
}
class Rt
{
public static void main(String[]args)
{
student student_dx=new student();//創(chuàng)建student類的對象
}
}
/*報錯:
exercise14.java:8: 找不到符號
符號: 構(gòu)造函數(shù) person()
位置: 類 person
class student extends person
^
1 錯誤
*/
說明:student類自動產(chǎn)生了一個student(){super();},但是由于person類已經(jīng)聲明了構(gòu)造方法,默認(rèn)的那個帶參數(shù)的構(gòu)造方法沒有產(chǎn)生.,所以報錯中提到找不到構(gòu)造函數(shù)person()
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
基于maven搭建一個ssm的web項目的詳細(xì)圖文教程
這篇文章主要介紹了基于maven搭建一個ssm的web項目的詳細(xì)教程,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-09-09
java 輸入一個數(shù)字,反轉(zhuǎn)輸出這個數(shù)字的值(實現(xiàn)方法)
下面小編就為大家?guī)硪黄猨ava 輸入一個數(shù)字,反轉(zhuǎn)輸出這個數(shù)字的值(實現(xiàn)方法)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-10-10
jvm細(xì)節(jié)探索之synchronized及實現(xiàn)問題分析
這篇文章主要介紹了jvm細(xì)節(jié)探索之synchronized及實現(xiàn)問題分析,涉及synchronized的字節(jié)碼表示,JVM中鎖的優(yōu)化,對象頭的介紹等相關(guān)內(nèi)容,具有一定借鑒價值,需要的朋友可以參考下。2017-11-11
詳解SpringMVC重定向傳參數(shù)的實現(xiàn)
本篇文章主要介紹了詳解SpringMVC重定向傳參數(shù)的實現(xiàn),我們可以使用重定向的方式,改變?yōu)g覽器的地址欄,防止表單因為刷新重復(fù)提交。有興趣的可以了解一下。2017-01-01
SpringBoot無法識別bootstrap.yml小綠葉問題的解決辦法
一般單獨使用?Spring?Boot?時,bootstrap.yml?文件一般是不會生效的,也就是沒有小綠葉圖標(biāo),本文給大家介紹了SpringBoot無法識別bootstrap.yml小綠葉問題的解決辦法,文中給出了兩種解決方案,需要的朋友可以參考下2024-07-07
帶你了解Java數(shù)據(jù)結(jié)構(gòu)和算法之二叉樹
這篇文章主要為大家介紹了Java數(shù)據(jù)結(jié)構(gòu)和算法之二叉樹,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2022-01-01

