@Override 是java中提供的僅僅作用于方法的注解,其意為該方法復寫了父類或?qū)崿F(xiàn)了接口中的方法。
對于子類中的方法,如果不使用@Override 注解,在方法簽名和入?yún)⑴c父類或接口中一致時,編譯器也會識別出這是在復寫方法。因此可以理解為@Override 注解 不是必須的。
- 那么為什么作者推薦使用這個注解呢?
在不使用@Override 注解時,有時程序員以為自己在復寫父類的方法,但是其實拼寫或者入?yún)⒏割惒灰恢聲r,其實就是在實現(xiàn)一個新的方法。
而使用@Override 注解,IDE 就可以提前發(fā)現(xiàn)并提醒,從而規(guī)避這樣的問題。
最后作者提到在具體的類中,不必標注已確信覆蓋了抽象方法聲明中的方法。但我認為還是應該保持一個使用該注解的習慣。