偶看JVMS时好像没有看到...难道是我眼花了...

解决方案 »

  1.   

    JVMS都是比较老的了.
    自己写一个,然后javap -verbose 类名 
    这样看一下.感觉是接口吧.
      

  2.   

    import java.lang.annotation.*;@Target(ElementType.METHOD)
    @Retention(RetentionPolicy.RUNTIME)
    public @interface TestCase {    String id() default "[none]";
    }
    好像没什么特殊的地方Compiled from "TestCase.java"
    public interface TestCase extends java.lang.annotation.Annotation{
    public abstract java.lang.String id();}
    Compiled from "TestCase.java"
    public interface TestCase extends java.lang.annotation.Annotation
      SourceFile: "TestCase.java"
      RuntimeVisibleAnnotations: length = 0x1B
       00 02 00 0B 00 01 00 0C 5B 00 01 65 00 0D 00 0E
       00 0F 00 01 00 0C 65 00 10 00 11 
      minor version: 0
      major version: 49
      Constant pool:
    const #1 = class #18; //  TestCase
    const #2 = class #19; //  java/lang/Object
    const #3 = class #20; //  java/lang/annotation/Annotation
    const #4 = Asciz id;
    const #5 = Asciz ()Ljava/lang/String;;
    const #6 = Asciz AnnotationDefault;
    const #7 = Asciz [none];
    const #8 = Asciz SourceFile;
    const #9 = Asciz TestCase.java;
    const #10 = Asciz RuntimeVisibleAnnotations;
    const #11 = Asciz Ljava/lang/annotation/Target;;
    const #12 = Asciz value;
    const #13 = Asciz Ljava/lang/annotation/ElementType;;
    const #14 = Asciz METHOD;
    const #15 = Asciz Ljava/lang/annotation/Retention;;
    const #16 = Asciz Ljava/lang/annotation/RetentionPolicy;;
    const #17 = Asciz RUNTIME;
    const #18 = Asciz TestCase;
    const #19 = Asciz java/lang/Object;
    const #20 = Asciz java/lang/annotation/Annotation;{
    public abstract java.lang.String id();
      AnnotationDefault: length = 0x3
       73 00 07 }
      

  3.   

    会extends java.lang.annotation.Annotation 啊
    jdk5新东西还不熟悉。
      

  4.   

    新增东西很有意思.
    比如enum会继承java.lang.Enum;表面上的引用类型不断增加.
      

  5.   

    你读的什么书 jvm相关的,我不太喜欢读太厚的,没精力。
      

  6.   

    看过一点jvm规范,不算厚,不过晦涩.
      

  7.   

    偶,原来是这样啊,先谢过了...这么说来ZangXT同学你有最新的JVMS啦
    不拿出来分享,太不厚道了...
      

  8.   

    现在最想买的是JLS,又怕买了还没看就出新版了,呵呵.
      

  9.   

    class里要annotation做什么。。直接忽略~
    annotation只要出现在源码里就可以了嘛~嘿嘿
      

  10.   

    hehe
    我到觉得JLS不如JVMS那么好看,因为它可以部分满足我的偷窥欲-_-!
    JLS倒像是一直在限制你这个怎么做,那个怎么做的....
      

  11.   

    如果对jvm感兴趣,可以看一下这个东西
    http://jasmin.sourceforge.net/
      

  12.   

    jasmin允许你自己使用jvm的指令写类似汇编的代码,然后帮你生成class文件.
    可以测试一下编译器不给生成的东西.