枚举getClass、getDeclaringClass区别

枚举getClass、getDeclaringClass区别
1):“不含抽象方法”,所有枚举常量未重写方法,的class
getClass与getDeclaringClass方法输出结果相同
class反编译文件:public final class NoteBook extends Enum

2):“不含抽象方法”,部分枚举常量重写了方法,的class
枚举常量重写了方法:getClass与getDeclaringClass方法输出结果不同
枚举常量未重写方法:getClass与getDeclaringClass方法输出结果相同

class反编译文件:public class Cellphone extends Enum

3 ):“不含抽象方法”,所有枚举常量重写了方法,的class
getClass与getDeclaringClass方法输出结果不同
class反编译文件:public class Week extends Enum

4):
“含有抽象方法”,枚举常量实现了方法,的class
getClass与getDeclaringClass方法输出结果不同
class反编译文件:public abstract class Weather extends Enum

 测试代码下载地址为:test.zip

反编译工具下载地址为:jad.zip

posted @ 2018-07-30 13:52  松松敲代码  阅读(3193)  评论(0编辑  收藏  举报