9久久伊人精品综合,亚洲一区精品视频在线,成 人免费va视频,国产一区二区三区黄网,99国产精品永久免费视频,亚洲毛片多多影院,精品久久久无码人妻中文字幕,无码国产欧美一区二区三区不卡
學習啦 > 生活課堂 > 生活小常識 > 重寫和重載的三點區別

重寫和重載的三點區別

時間: 志峰887 分享

重寫和重載的三點區別

  重載(Overloading)和重寫(Overriding)是Java中兩個比較重要的概念。但是對于新手來說也比較容易混淆。下面是學習啦小編為大家準備的重寫和重載的區別,希望大家喜歡!

  重寫和重載的區別一:定義

  重載

  簡單說,就是函數或者方法有同樣的名稱,但是參數列表不相同的情形,這樣的同名不同參數的函數或者方法之間,互相稱之為重載函數或者方法。

  重寫

  重寫指的是在Java的子類與父類中有兩個名稱、參數列表都相同的方法的情況。由于他們具有相同的方法簽名,所以子類中的新方法將覆蓋父類中原有的方法。

  重寫和重載的區別二:相關知識

  關于重載和重寫,你應該知道以下幾點:

  1、重載是一個編譯期概念、重寫是一個運行期間概念。

  2、重載遵循所謂“編譯期綁定”,即在編譯時根據參數變量的類型判斷應該調用哪個方法。

  3、重寫遵循所謂“運行期綁定”,即在運行的時候,根據引用變量所指向的實際對象的類型來調用方法

  4、因為在編譯期已經確定調用哪個方法,所以重載并不是多態。而重寫是多態。重載只是一種語言特性,是一種語法規則,與多態無關,與面向對象也無關。(注:嚴格來說,重載是編譯時多態,即靜態多態。但是,Java中提到的多態,在不特別說明的情況下都指動態多態)

  重寫和重載的區別三:對比

  重寫的例子

  下面是一個重寫的例子,看完代碼之后不妨猜測一下輸出結果:

  class Dog{

  public void bark(){

  System.out.println("woof ");

  }

  }

  class Hound extends Dog{

  public void sniff(){

  System.out.println("sniff ");

  }

  public void bark(){

  System.out.println("bowl");

  }

  }

  public class OverridingTest{

  public static void main(String [] args){

  Dog dog = new Hound();

  dog.bark();

  }

  }

  輸出結果:

  bowl

  上面的例子中,dog對象被定義為Dog類型。在編譯期,編譯器會檢查Dog類中是否有可訪問的bark()方法,只要其中包含bark()方法,那么就可以編譯通過。在運行期,Hound對象被new出來,并賦值給dog變量,這時,JVM是明確的知道dog變量指向的其實是Hound對象的引用。所以,當dog調用bark()方法的時候,就會調用Hound類中定義的bark()方法。這就是所謂的動態多態性。

  重寫的條件

  參數列表必須完全與被重寫方法的相同;

  返回類型必須完全與被重寫方法的返回類型相同;

  訪問級別的限制性一定不能比被重寫方法的強;

  訪問級別的限制性可以比被重寫方法的弱;

  重寫方法一定不能拋出新的檢查異常或比被重寫的方法聲明的檢查異常更廣泛的檢查異常

  重寫的方法能夠拋出更少或更有限的異常(也就是說,被重寫的方法聲明了異常,但重寫的方法可以什么也不聲明)

  不能重寫被標示為final的方法;

  如果不能繼承一個方法,則不能重寫這個方法。

  重載的例子

  class Dog{

  public void bark(){

  System.out.println("woof ");

  }

  //overloading method

  public void bark(int num){

  for(int i=0; i

  System.out.println("woof ");

  }

  }

  上面的代碼中,定義了兩個bark方法,一個是沒有參數的bark方法,另外一個是包含一個int類型參數的bark方法。在編譯期,編譯期可以根據方法簽名(方法名和參數情況)情況確定哪個方法被調用。

  重載的條件

  被重載的方法必須改變參數列表;

  被重載的方法可以改變返回類型;

  被重載的方法可以改變訪問修飾符;

  被重載的方法可以聲明新的或更廣的檢查異常;

  方法能夠在同一個類中或者在一個子類中被重載。

1747560 主站蜘蛛池模板: 日本亚洲中文字幕不卡| 久久热这里只有精品国产| 国产地址二永久伊甸园| 99RE8这里有精品热视频| 国产精品国产三级国产试看| 久久这里只精品国产2| 精品亚洲成A人在线观看青青| 亚洲码亚洲码天堂码三区| 一本久久a久久精品综合| 啊┅┅快┅┅用力啊岳网站| 免费a级毛片无码av| 风骚少妇久久精品在线观看| 日本一本正道综合久久dvd| 日本欧美一区二区免费视频| 亚洲成人精品综合在线| 精品午夜福利在线视在亚洲| 欧美日韩亚洲国产| 亚洲精品日本久久一区二区三区| 蜜芽久久人人超碰爱香蕉| 亚洲女人的天堂在线观看| 韩国无码av片在线观看| 色猫咪av在线观看| 91精品国产吴梦梦在线观看永久| 熟妇人妻无码中文字幕老熟妇| 麻豆蜜桃伦理一区二区三区| 亚洲男人的天堂久久香蕉| 国产裸体美女视频全黄| 精品999日本久久久影院| 国产精品中文字幕视频| 日韩精品三区二区三区| 亚洲色欲在线播放一区| 国产成人高清精品免费软件| 无码国产精品一区二区VR老人 | 99久久精品费精品国产一区二| 亚洲av优女天堂熟女久久| 国产日韩AV免费无码一区二区三区| 成全影视大全在线观看| 亚洲码和欧洲码一二三四 | 国产稚嫩高中生呻吟激情在线视频| 亚洲欧美日韩久久一区二区| 97av麻豆蜜桃一区二区|