= アノテーション = == 参考 == * [[http://d.hatena.ne.jp/Kazuhira/20110828/1314524208]] * [[http://blog.sibrof.net/ken/2008/05/29/797/]] == 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 }}}