不知道Java类文件结构的同学,看这篇文章就够了 (4)

  ConstantValue属性的作用是通知虚拟机自动为静态变量赋值,只有被static修饰的变量才可以使用这项属性,在Java中对非static属性的赋值是在构造器中完成的,而对于类变量,则有两种方法可以选择,在类构造器赋值,或者在ConstantValue属性赋值。

  7)InnerClasses属性

     该属性用于记录内部类与宿主类之间的关联。如果一个类中定义了内部类,那么编译器将会为它及它所包含的内部类生成InnerClasses属性。

     8)Deprecated属性和Synthetic属性

     该属性用于表示某个类、字段和方法,已经被程序作者定为不再推荐使用,它可以通过在代码中使用@Deprecated注释进行设置。

     9)Synthetic属性

     该属性代表此字段或方法并不是Java源代码直接生成的,而是由编译器自行添加的,如this字段和实例构造器、类构造器等。

 

  参考资料: 《深入理解Java虚拟机-JVM高级特性与最佳实践》 -周志明

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpjdwj.html