Как аннотации методов Java работают в сочетании с переопределением методов?

У меня есть родительский класс Parentи дочерний класс Child, определенные следующим образом:

class Parent {
    @MyAnnotation("hello")
    void foo() {
        // implementation irrelevant
    }
}
class Child {
    @Override
    foo() {
        // implementation irrelevant
    }
}

Если я получу ссылку Methodна Child::foo, даст ли мне childFoo.getAnnotation(MyAnnotation.class)@MyAnnotation? Или это будет null?

В более общем плане меня интересует, как аннотации работают с наследованием в Java.

63
задан Bill the Lizard 10 April 2012 в 03:19
поделиться