最近剛剛配置了新機器,將原來的代碼放在eclipse上執行,總會出現Remove '@override' annotation,若是要一個個手動刪除至關麻煩,最後在網上找了一下緣由原來是編譯器版本的問題。
@override:表示一個方法聲明打算重寫超類中的另外一個方法聲明。若是方法利用此註釋類型進行註解但沒有重寫超類方法,則編譯器會生成一條錯誤消息。
問題緣由:Java 1.5的編譯器默認對父類的方法進行覆蓋,採用@Override進行說明;但1.6已經擴展到對接口的方法;因此若是仍是以Java 1.5的編譯器來編譯的話,會出現錯誤。
解決辦法以下:
在eclipse中,compiler 都得設置到1.6。這包括preference->java->compiler 下要改爲1.6, 同時,project裏的build path 裏jdk 也得改爲1.6。 這主要是針對同時裝了1.5, 1.6,而default is 1.5這種狀況的。java