4
我知道在Java中@Override註釋只是告訴編譯器檢查,看它是否實際上在編譯期間重寫超類中的方法。@Override註解在java中如何工作?
來自我讀的文章:https://dzone.com/articles/how-annotations-work-java。
@Override註釋定義僅僅是以下幾點:
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.SOURCE)
public @interface Override {
}
這個註釋定義對告訴編譯器來尋找超類相同的方法簽名沒有邏輯。
在java編譯器中定義相同方法簽名的邏輯是檢查它的超類嗎?
是的。如果使用@Override註解的方法實際上沒有覆蓋任何內容,您將收到編譯錯誤。儘管這不是註釋聲明的一部分。 – f1sh
編譯器會抓取註釋,因此檢查方法簽名的邏輯最終將與編譯器有關。此外,由於保留策略聲明註釋隨後將被丟棄。 – Mena