Scala:将java接口移植到scala

时间:2015-03-23 04:22:20

标签: java scala traits

我有一段Java代码如下:

import java.lang.annotation.Retention;
import java.lang.annotation.Target;
import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.ElementType.PARAMETER;
import static java.lang.annotation.RetentionPolicy.RUNTIME;


@BindingAnnotation
@Target({ FIELD, PARAMETER, METHOD })
@Retention(RUNTIME)
public @interface MessageCount {
}

这不是我的代码,但我正在尝试在Scala中重写它。我不太了解@interface构造。我也不明白这些注释是如何转换为Scala的。 或者是否有可能以某种方式在Scala中使用它?

我更喜欢在Scala中重写/移植它。我唯一能想到的就是把它写成Scala特征。

任何指针,建议表示赞赏。

1 个答案:

答案 0 :(得分:1)

不,目前使用@Retention(RUNTIME)的注释无法在Scala中编写。

  

或者是否有可能以某种方式在Scala中使用它?

是的,您可以在Scala中使用它。您可以在同一个项目中同时使用Scala和Java代码(Java代码通常转到src/main/java,Scala代码转到src/main/scala),它们甚至可以相互引用。