纯净、安全、绿色的下载网站

首页|软件分类|下载排行|最新软件|IT学院

当前位置:首页IT学院IT技术

枚举类中valueOf用法 java 枚举类中的valueOf用法说明

lamdaxu   2021-09-13 我要评论
想了解java 枚举类中的valueOf用法说明的相关内容吗,lamdaxu在本文为您仔细讲解枚举类中valueOf用法的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:java,枚举类,valueOf用法,下面大家一起来学习吧。

枚举类中的valueOf用法

前言:今天遇到了一个枚举类的valueOf用法,遇到了一点问题,这里特例写一个demo来测试一下

先创建一个BasicEnum的接口

/**
 * @Author 徐志
 * @date 2020/9/4 12:42
 **/
public interface BasicEnum<L,V> {
    /**
     * get name
     *
     * @return
     */
    L getName();
    /**
     * get value
     *
     * @return
     */
    V getValue();
}

创建一个枚举类实现BasicEnum接口

添加name和value属性

/**
 * @Author 徐志
 * @date 2020/9/4 12:38
 **/
public enum Color implements BasicEnum<String,Integer>{
    RED("a",0),
    GREEN("b",1),
    BLUE("c",2);
    private final String name;
    private final Integer value;
    Color(String name, Integer value) {
        this.name = name;
        this.value = value;
    }
    public String getName() {
        return this.name;
    }
    public Integer getValue() {
        return this.value;
    }
}

方式一:调用valueOf

/**
 * @Author 徐志
 * @date 2020/9/4 12:46
 **/
public class TestEnum {
   @Test
   public void test(){
       System.out.println(Color.valueOf("RED").getValue());
   }
}

在这里插入图片描述

方式二:调用valueOf

/**
 * @Author 徐志
 * @date 2020/9/4 12:46
 **/
public class TestEnum {
   @Test
   public void test(){
       System.out.println(Color.valueOf("a").getValue());
   }
}

在这里插入图片描述

比较上面两种调用valueOf的方法。发现通过name属性调用会报错。

显示参数异常,查看枚举类的源码,找到valueOf方法

在这里插入图片描述

发现确实是根据枚举类的内容来调用valueOf方法,如果想使用name属性来实现valueOf的调用,我们需要重写这个valueOf方法

枚举类valueOf方法的疑问

枚举类中valueOf方法只有一个参数

而Enum类中有两个参数,请问Enum实例类中的valueOf方法是从何处继承而来?

答案:jvm进行编译的时候添加的

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。


相关文章

猜您喜欢

  • C#给PPT图表添加趋势线 C#怎样给PPT中图表添加趋势线详解

    想了解C#怎样给PPT中图表添加趋势线详解的相关内容吗,E-iceblue在本文为您仔细讲解C#给PPT图表添加趋势线的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:c#,ppt图表添加趋势线,ppt图表怎么添加趋势线,ppt图表中可以添加趋势线吗,下面大家一起来学习吧。..
  • Java动态代理 Java反射的应用之动态代理深入理解

    想了解Java反射的应用之动态代理深入理解的相关内容吗,威斯布鲁克.猩猩在本文为您仔细讲解Java动态代理的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:Java动态代理,Java反射,下面大家一起来学习吧。..

网友评论

Copyright 2020 www.hris-software.net 【幸运软件站】 版权所有 软件发布

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 点此查看联系方式