国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

java中重寫父類方法加不加@Override詳解

瀏覽:29日期:2022-08-10 09:55:01
java重寫父類方法加不加@Override

這個是我在剛學(xué)習(xí)java時遇到的問題,希望能給像我一樣的新手學(xué)習(xí)時帶來幫助,如有錯誤請指正,謝謝!

class Father{ public String name; public int age; public Father(){ } public void work(){System.out.println('蓋房子'); }}class Son extends Father{ public int weight; public Son(){ } public void work(){System.out.println(i); }}

上面子類的work()方法和基類work()方法的控制器類型(包括返回值類型、參數(shù)等)是完全一致的,這種情況加不加@Override都是可以的,都可以對基類方法進行重寫。

因為不寫的情況下,java虛擬機會進行自動識別。

class Son extends Father{ public int weight; public Son(){ } public int work(int i){System.out.println(); }}

在上面這種情況下,work()方法會被系統(tǒng)認為是子類新定義的方法,沒有繼承基類,這也是被允許的。

class Son extends Father{ public int weight; public Son(){ } public int work(){System.out.println();return 1; }}

但是這種情況只修改返回值類型時,是不被允許的,其仍被看做基類的重寫,但是返回值類型變了,就會被編輯器認為基類重寫返回值類型不一致而報錯。

所以存在即合理,在編寫代碼時如果需要對基類進行重寫還是加上@Override比較好,還可以檢測一些容易忽略的錯誤。

@Override的作用

@Override是偽代碼,表示重寫(當(dāng)然不寫也可以),不過寫上有如下好處:

1、可以當(dāng)注釋用,方便閱讀

2、編譯器可以給你驗證@Override下面的方法名是否是你父類中所有的,如果沒有則報錯。

例如,你如果沒寫@Override,而你下面的方法名又寫錯了,這時你的編譯器是可以編譯通過的,因為編譯器以為這個方法是你的子類中自己增加的方法。

舉例:在重寫父類的onCreate時,在方法前面加上@Override 系統(tǒng)可以幫你檢查方法的正確性。

@Overridepublic void onCreate(Bundle savedInstanceState){…….}

這種寫法是正確的,如果你寫成:

@Overridepublic void oncreate(Bundle savedInstanceState){…….}

編譯器會報如下錯誤:

The method oncreate(Bundle) of type HelloWorld must override or implement a supertype method

以確保你正確重寫onCreate方法(因為oncreate應(yīng)該為onCreate)。

而如果你不加@Override,則編譯器將不會檢測出錯誤,而是會認為你為子類定義了一個新方法:oncreate

加不加@override有什么區(qū)別

1.簡單來說@override注解是告訴編譯器,下面的方法是重寫父類的方法

2.如果不寫@override注解去直接重寫方法,編譯器是不會判斷你是不是正確重寫了父類中的方法的。

如重寫方法時參數(shù)與父類不同,程序是不會提示報錯的。這會留下一個潛在的bug。

當(dāng)你寫了@override注解時,程序會判斷你是否正確的重寫了父類的對應(yīng)方法。

而且加上此注解后,程序會自動屏蔽父類的方法。

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。

標簽: Java
相關(guān)文章:
主站蜘蛛池模板: 五月激激激综合网色播免费 | 国产免费一级片 | 中文字幕在线视频网 | 精品网址 | 99久久免费国产香蕉麻豆 | 九九综合九九综合 | 免费一区二区三区 | 亚洲免费视频网址 | 天天躁天天碰天天看 | 欧美在线观看www | 欧美日韩在线视频一区 | 波多野结衣在线观看3人 | 久久久99精品免费观看 | 国产日韩欧美三级 | 免费观看欧美一级片 | 爱综合| 深夜福利视频大全在线观看 | 99久久精品毛片免费播放 | 国产三级黄色片 | 男人的天堂视频在线 | 国产黄色激情视频 | 色九| 久草在线视频中文 | 在线观看一区二区三区视频 | 欧美在线视频 一区二区 | 扒开双腿猛进入爽爽在线观看 | 国产91一区二这在线播放 | 欧美一级人与动毛片免费播放 | 777色狠狠一区二区三区 | 久久在线观看免费视频 | 国内精品线在线观看 | 在线成人国产 | 一级毛片视频免费观看 | 久久精品久久久久 | 久久精品午夜视频 | 国产一级做a爰片久久毛片 国产一级做a爰片久久毛片99 | 99re热视频| 日韩在线视频线视频免费网站 | 国产v日韩v欧美v精品专区 | 国产高清美女一级a毛片久久 | 国产成版人视频网站免费下 |