“@Override”和“<! - ?extends Page - >”是什么意思?

时间:2010-12-20 12:16:08

标签: java

@Override
public Class< ? extends Page> getHomePage() {
            return HomePage.class;
}


public Class<HomePage> getHomePage(){
        return HomePage.class;
}

第一个有注释     覆盖。这是什么意思或     它向框架发送了什么。

两个方法都会返回相同的类。我的意思是这意味着什么? extends Page。我的意思是?标记

4 个答案:

答案 0 :(得分:2)

答案 1 :(得分:2)

@Override -

   @Override注释通知编译器该元素是要覆盖超类中声明的元素(覆盖方法将在标题为“接口和继承”的课程中讨论)。

另见

答案 2 :(得分:2)

关于第二个问题:a wildcard

两个方法都将返回相同的对象(代表Class的{​​{1}}实例),但它们以不同的方式声明,允许通配版本由不关心的方法使用你有什么样的HomePage,只要它是Page的子类。

答案 3 :(得分:1)

1)Override Annotation

Javadoc:表示方法声明旨在覆盖超类中的方法声明。如果使用此批注类型注释方法但不覆盖超类方法,则编译器需要生成错误消息。

2)?意味着任何。例如:&lt; ? &GT;表示任何java数据类型都可以在这里

&LT; ?扩展页面&gt;表示允许Page的任何子类。