首頁 > Java > java教程 > java中方法的重寫與重載的區別

java中方法的重寫與重載的區別

伊谢尔伦
發布: 2016-11-21 15:02:50
原創
1542 人瀏覽過

重載: 方法名稱相同,但是參數必須有區別(參數不同可以使型別不同,順序不同,個數不同)。重寫(又叫覆蓋): 子類別繼承父類別的方法,並重新實作此方法。

  方法重寫使用注意事項:
  1.方法重寫時,必須有繼承關係
  2.方法重寫時,方法名稱與形式參數必須一致。
  3.方法重寫時 ,子類別的權限修飾符需要大於或等於父類別的權限修飾符。
  4.方法重寫時 ,子類別的回傳值類型必須小於或等於父類別的回傳值型別
  5.方法重寫時 , 子類別的異常型別要小於等於父類別的異常型別。

在這裡面主要拿第三點來測試:

public  class a{
         public static class People
         {
            public void fun(){};
         }
        static class Student extends People
         {
             protected void fun(){
              System.out.println("dfdfd");
             }
         }
   public static void main(String[] args){
        Student p = new Student();
         p.fun();
         }
}
登入後複製

編譯就報錯了,如圖:

java中方法的重寫與重載的區別

原因是父類的方法的權限是public ,而子類改為protected,降低值了權限,所以只能大於或等於如:    

public  class a{
         public static class People
         {
            protected void fun(){};
         }
        static class Student extends People
         {
             public void fun(){
              System.out.println("dfdfd");
             }
         }
   public static void main(String[] args){
        Student p = new Student();
         p.fun();
         }
}
登入後複製

運作成功

java中方法的重寫與重載的區別

相關標籤:
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
java可以做為web的後端嗎?
來自於 1970-01-01 08:00:00
0
0
0
安裝JAVA
來自於 1970-01-01 08:00:00
0
0
0
無法安裝java
來自於 1970-01-01 08:00:00
0
0
0
求救:JAVA加密的資料PHP解密
來自於 1970-01-01 08:00:00
0
0
0
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板