程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> 關於JDK5.0中預定義的解釋

關於JDK5.0中預定義的解釋

編輯:關於JAVA

我們先來看一下,下面這段代碼:

public class B extends A {
  @Override
  public void test1() {
    // TODO Auto-generated method stub
    super.test1();
  }
}

上面這段代碼很簡單,創建一個類,類的名字為B 同時讓這個B類繼承與A類,在A類中 有一個方法叫 test1 ,現在我們想在B類中覆蓋A類的test1方法,我們會看到代碼中會出 現 @Override 一句注釋,它是用來干什麼的呢?有很多學習Java的朋友,都會將他刪除 掉,那麼我們就一起來看看它的作用吧。

首先我們來創建一個類,類的名字叫做 A 具體源代碼如下:

package com.zsw.test;

public class A {
  public void test1() {
   System.out.println("This is test1 moeth in A");
  }
}

我們再來創建一個類,類的名字叫做 B 並且讓B類繼承於 A 類,我們想在B類中重寫A 類中的test1方法,但是這時我們不小心將方法名寫成 testl(這裡不是test1 而是字母中 的 L ),源代碼如下:

package com.zsw.test;

public class B extends A {

  public void testl() {
    System.out.println("This is test1 method in B");
  }
}

我們發現我們的方法名稱寫錯了程序並沒有報錯,但是我們想要覆蓋的 test1 方法功 能並沒有實現而是為B類中有添加一個新的方法 testl(這裡是L)

最後我們在寫測試類 Test的時候執行結果怎麼都不對。

package com.zsw.test;

public class Test {

  public static void main(String[] args) {
    A a = new B();
    a.test1();

  }

}

總是打印的是 A類中的 test1 方法。這種情況在初學這種經常出現,那麼怎麼能夠避 免這種問題呢,這就要用到我們上面的那句注釋了。現在我們在B類的方法前加上注釋  我們再來看看,發現B類的代碼報錯了

因為這句注釋的意思是說這裡覆蓋的是A 類中的test1方法而現在所寫的方法沒有進行 覆蓋。這樣我們就很容易避免上面所出現的錯誤了。

當然在JDK5.0中還有很多其他的一些注釋比如:

@Deprecated  方法已過期,不再推薦使用。在一個方法上面寫類這句注釋就會出現 下面的情況:

關於更多的一些注釋,可以參考一下JDK5.0幫助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved