Upload page content

You can upload content for the page named below. If you change the page name, you can also upload content for another page. If the page name is empty, we derive the page name from the file name.

File to load page content from
Page name
Comment

Locked History Actions

scala/annotations

アノテーション

参考

Javaに劣るScalaの機能

  • 実行時に参照可能なアノテーションはScalaでは定義できない
    それらはJavaコードで定義してScalaで利用するようにする。

  • 実行時に参照不可能なアノテーションは定義できる?
    しかし、そのようなものは大して意味が無い。

サンプル

package testing;
import java.lang.annotation.*;
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@interface SomeAnno {
  String something();
}

@SomeAnno(something="/foo/bar")
class AnnoTest {  
}

class NoTest {
}

object Annotations {

  def main(args: Array[String]) {    
    val someAnno = classOf[AnnoTest].getAnnotation(classOf[SomeAnno])
    println(someAnno.something)    
    val noAnno = classOf[NoTest].getAnnotation(classOf[SomeAnno])
    println(noAnno)
  }
}

実行結果

/foo/bar
null