使用Scala在方法中搜索注释
以下代码无法编译(使用Scala在方法中搜索注释,scala,annotations,Scala,Annotations,以下代码无法编译(Output不是java.reflect.annotation.annotation)类型: 类输出(val name:String)扩展注释 类块{ def输出{ 为了{ 方法您的Block.getClass应该是classOf[Block]getClass在实例上工作 (java等价物:x.getClassx.getClass()classOf[x]x.class.C等价物:x.getClassx.GetType()
Output
不是java.reflect.annotation.annotation
)类型:
类输出(val name:String)扩展注释
类块{
def输出{
为了{
方法您的Block.getClass
应该是classOf[Block]
getClass
在实例上工作
(java等价物:x.getClass
x.getClass()
classOf[x]
x.class
.C等价物:x.getClass
x.GetType()
typeof(x)在Scala中似乎没有办法实现这一点(目前),因此我们应该求助于使用Java类:
import java.lang.annotation.*;
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface Output {
public String value();
}
你应该指出你的错误是什么。Thx,但我实际上想要这个。getClass。即使如此,错误仍然存在。这就是为什么你应该真正告诉你的错误是什么。这比查看代码和猜测哪里可能有问题更容易
import java.lang.annotation.*;
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface Output {
public String value();
}