通过反编译字节码来理解 Java 枚举

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了通过反编译字节码来理解 Java 枚举相关的知识,希望对你有一定的参考价值。

枚举的声明很简单, 像 enum Gender { Male, Female }, 其余事情就是 Java 编译器帮我们干的了,所以 enum 也就是一块语法糖。有了枚举确实是很方便,避免了传统常量的无范围性。那么编译器到底在后面做了什么呢?以及理解了这个之后我们可以怎么去使用 Java 的枚举, 下面就从这个例子说起:

public enum Gender {
    Male,
    Female
}

把上面的编译成 Gender.class, 然后用  javap -c Gender 反编译出来就是

阅读全文


以上是关于通过反编译字节码来理解 Java 枚举的主要内容,如果未能解决你的问题,请参考以下文章

通过查看字节码来学习Java代码

如何保护解密密钥不被反编译?

深入分析Java的编译原理

Java 反编译工具的使用与对比分析

Java 反编译工具哪家强?对比分析瞧一瞧

从1+1=2来理解Java字节码从1+1=2来理解Java字节码