当前位置: 首页 > 知识库问答 >
问题:

在Java中注释可以嵌套在一个类中吗?

钮高朗
2023-03-14
import javax.jws.WebService;
import javax.jws.WebMethod;
import javax.jws.soap.SOAPBinding;
import javax.jws.soap.SOAPBinding.Style;

@WebService          //<----- is this annotation nested in WebService class
@SOAPBinding(style = Style.RPC)
public interface TimeServer {


    @WebMethod String getTimeAsString();  //<-------is this nested in a class too
    @WebMethod long getTimeAsElapsed();
}
Public class WebMethod{
   //members
   //methods
  public @interface WebMethod{ //annotation definition in class, is this possible
  }
}

如果不是这样,请给我一个简单的例子。

共有1个答案

刘野
2023-03-14

不,就像链接到的Javadoc中所说的,这定义为

@Retention(value=RUNTIME)
@Target(value=METHOD)
public @interface WebMethod

所以这是一个注释(@interface),您在一个方法(@target(value=method))上放置了一个注释(@interface)。

@WebMethod没有“嵌套”到@WebService中,这是两个独立的注释(当然,它们是协同工作的)。一个在方法上,另一个在类上由@target定义。

 类似资料:
  • 问题内容: 在Oracle的Java 教程中,我找到了以下文本: 与类方法和变量一样,静态嵌套类与其外部类相关联。与静态类方法一样,静态嵌套类不能直接引用其封闭类中定义的实例变量或方法-它只能通过对象引用来使用它们。 注意:静态嵌套类与它的外部类(和其他类)的实例成员进行交互,就像其他任何顶级类一样。实际上,静态嵌套类在行为上是顶级类,为了包装方便,该顶级类已嵌套在另一个顶级类中。 静态嵌套类使用

  • 我试图在嵌套对象中使用DynamoDB注释,如下所示: 我没有看到上面的属性是在UserAction类中自动生成的。我想知道嵌套对象中是否支持这些注释用法。请建议。

  • 大多数或所有核心hibernate配置属性都可以在启动属性文件中指定,以替代在hibernate.cfg.xml中指定映射。

  • 我创建了一个简单的列表类。我想做的是在 SLList 中创建一个方法来为 SLList 对象提供大小。我想以递归方式执行此操作,但是,我创建的以下 size() 方法不起作用。我知道其他实现它的方法,例如创建一个帮助器方法。但我好奇的是,为什么我的尺寸()不起作用?错误消息是“大小 () 未定义为 SLList.IntNode”。为什么?既然我使嵌套的IntMode类只是公共的和非静态的,为什么它

  • 问题内容: 我可以在JSON文件中使用注释吗?如果是这样,怎么办? 问题答案: 没有。 JSON应该都是数据,如果包含注释,那么它也将是数据。 您可能有一个称为(或其他名称)的指定数据元素,使用JSON数据的应用程序会忽略该数据元素。 在生成/接收JSON的过程中添加注释可能会更好,因为它们应该事先知道什么是JSON数据,或者至少知道其结构。 但是,如果您决定:

  • 我正在做一个遗留的Android项目,它使用一个非常旧的Jackson lib版本来解析从我们的web API带来的JSON。 我目前正在为该项目的一个新功能,并希望使用改型与Gson库作为其JSON解析器,因为这两个库提供了更多的灵活性和更干净的代码,如果与我们以前的库选择相比。 问题是,我将需要一些遗留POJO,那些已经有杰克逊注释。将Gson和Jackson注释放在同一个类中会产生冲突吗?或