如何解决类型级别的注释是否始终由该类型的公共方法继承?
以下情况是否总是如此?
int x = 6;
int Archived = 8;
int Publish = 7;
if (Archived != x || Publish != x)
{
Console.WriteLine("True");
}
else
{
Console.WriteLine("False");
}
x = 8;
if (Archived != x || Publish != x)
{
Console.WriteLine("True");
}
else
{
Console.WriteLine("False");
}
等同于
public interface Foo {
@MyCustomAnnotation
void bar();
@MyCustomAnnotation
void bar2();
}
还是取决于注释的定义方式?换句话说,类/接口级别的注释是否总是被该类型的方法继承(只要该方法也未使用此注释进行标记)?
具体来说,如果我将上面的注释定义为
@MyCustomAnnotation
public interface Foo {
void bar();
void bar2();
}
方法会从周围的类/接口继承此注释吗?
解决方法
除非在解释注解的库明确决定将类型级别的注解作为默认值(例如,Spring的@Transactional
)之前,否则它们永远是等效的。即便如此,类级注释和方法级注释的组合是组合定义(@RequestMapping
还是替代定义(@Transactional
)完全取决于库中编写的代码。>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。