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

