您好,欢迎来到伴沃教育。
搜索
您的当前位置:首页枚举中valueOf方法的实现

枚举中valueOf方法的实现

来源:伴沃教育
  • 例子:
image.png
  • 枚举类中包含两个枚举元素:PUBLIC, PRIVATE
  • 在main方法中调用valueOf方法,结果分别是true,true,false

源码解析

  • 主体思路:是将枚举的元素通过反射(method)转化为一个key和value都是枚举元素的HashMap<String, T>,例如上面案例中的HashMap的数据为:
image.png
  • valueOf方法调用enumType.enumConstantDirectory()方法
    image.png
  • 调用Class类的getEnumConstantsShared方法

    image.png
  • 先通过个getMehotd方法获取到Method

  • 然后调用invoke方法获取到PUBLICPRIVATE

image.png

总结:

  • 反射的知识点可以看这篇文章:
  • 提供了将枚举元素转化为Map的一种思路

Copyright © 2019- bangwoyixia.com 版权所有 湘ICP备2023022004号-2

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务