Java的注解怎么继承另一个注解的功能
时间: 2024-03-03 09:27:46 浏览: 126
Java用注解的方式定义一个Servlet
5星 · 资源好评率100%
Java的注解可以通过@Inherited注解来实现继承另一个注解的功能。
@Inherited注解可以用于指定某个注解是否可以被继承,当一个类或接口被注解时,其子类或实现类也会继承该注解。如果一个注解被@Inherited注解修饰,则其子类也具有该注解的功能。
例如,我们定义一个注解@MyAnnotation:
```
@Inherited
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
public @interface MyAnnotation {
String value() default "";
}
```
然后再定义一个注解@MySubAnnotation,继承@MyAnnotation注解的功能:
```
@Inherited
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
public @interface MySubAnnotation extends MyAnnotation {
String subValue() default "";
}
```
这样,在使用@MySubAnnotation注解时,其子类也会继承@MyAnnotation注解的功能。
```
@MySubAnnotation(value = "hello", subValue = "world")
public class MyClass {
...
}
```
在上面的例子中,MyClass类不仅具有@MySubAnnotation注解的功能,还继承了@MyAnnotation注解的功能。
阅读全文