欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java 枚舉類中的valueOf用法說(shuō)明

 更新時(shí)間:2021年09月13日 10:16:25   作者:lamdaxu  
這篇文章主要介紹了java 枚舉類中的valueOf用法說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

枚舉類中的valueOf用法

前言:今天遇到了一個(gè)枚舉類的valueOf用法,遇到了一點(diǎn)問(wèn)題,這里特例寫一個(gè)demo來(lái)測(cè)試一下

先創(chuàng)建一個(gè)BasicEnum的接口

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

創(chuàng)建一個(gè)枚舉類實(shí)現(xiàn)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;
    }
}

方式一:調(diào)用valueOf

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

在這里插入圖片描述

方式二:調(diào)用valueOf

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

在這里插入圖片描述

比較上面兩種調(diào)用valueOf的方法。發(fā)現(xiàn)通過(guò)name屬性調(diào)用會(huì)報(bào)錯(cuò)。

顯示參數(shù)異常,查看枚舉類的源碼,找到valueOf方法

在這里插入圖片描述

發(fā)現(xiàn)確實(shí)是根據(jù)枚舉類的內(nèi)容來(lái)調(diào)用valueOf方法,如果想使用name屬性來(lái)實(shí)現(xiàn)valueOf的調(diào)用,我們需要重寫這個(gè)valueOf方法

枚舉類valueOf方法的疑問(wèn)

枚舉類中valueOf方法只有一個(gè)參數(shù)

而Enum類中有兩個(gè)參數(shù),請(qǐng)問(wèn)Enum實(shí)例類中的valueOf方法是從何處繼承而來(lái)?

答案:jvm進(jìn)行編譯的時(shí)候添加的

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringBoot詳細(xì)講解視圖整合引擎thymeleaf

    SpringBoot詳細(xì)講解視圖整合引擎thymeleaf

    這篇文章主要分享了Spring Boot整合使用Thymeleaf,Thymeleaf是新一代的Java模板引擎,類似于Velocity、FreeMarker等傳統(tǒng)引擎,關(guān)于其更多相關(guān)內(nèi)容,需要的小伙伴可以參考一下
    2022-06-06
  • Springboot中如何通過(guò)yml為實(shí)體類注入屬性

    Springboot中如何通過(guò)yml為實(shí)體類注入屬性

    這篇文章主要介紹了Springboot中如何通過(guò)yml為實(shí)體類注入屬性,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • Spring AOP結(jié)合注解實(shí)現(xiàn)接口層操作日志記錄

    Spring AOP結(jié)合注解實(shí)現(xiàn)接口層操作日志記錄

    在項(xiàng)目開發(fā)中我們需要記錄接口的操作日志:包含請(qǐng)求參數(shù)、響應(yīng)參數(shù)、接口所屬模塊、接口功能描述、請(qǐng)求地址、ip地址等信息;實(shí)現(xiàn)思路很簡(jiǎn)單就是基于注解和aop的方式去記錄日志,主要的難點(diǎn)在于日志表結(jié)構(gòu)、注解的設(shè)計(jì)已經(jīng)aop實(shí)現(xiàn)的一些比較好的實(shí)現(xiàn)方式的借鑒
    2022-08-08
  • MyBatis Excutor 攔截器的巧妙用法

    MyBatis Excutor 攔截器的巧妙用法

    這里要講的巧妙用法是用來(lái)實(shí)現(xiàn)在攔截器中執(zhí)行額外 MyBatis 現(xiàn)有方法的用法,并提供了解決攔截Executor時(shí)想要修改MappedStatement時(shí)解決并發(fā)的問(wèn)題。感興趣的朋友一起看看吧
    2017-10-10
  • JAVA不使用線程池來(lái)處理的異步的方法詳解

    JAVA不使用線程池來(lái)處理的異步的方法詳解

    這篇文章主要介紹了JAVA不使用線程池來(lái)處理的異步的方法,在這個(gè)示例中,asyncTask方法創(chuàng)建了一個(gè)新的線程來(lái)執(zhí)行異步任務(wù),這個(gè)新線程會(huì)立即開始執(zhí)行,而主線程則會(huì)繼續(xù)執(zhí)行后續(xù)的代碼,感興趣的朋友跟隨小編一起看看吧
    2024-05-05
  • Maven項(xiàng)目中resources配置總結(jié)

    Maven項(xiàng)目中resources配置總結(jié)

    這篇文章主要介紹了Maven項(xiàng)目中resources配置總結(jié),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-03-03
  • Java Number類原理實(shí)例解析

    Java Number類原理實(shí)例解析

    這篇文章主要介紹了Java Number類原理解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-11-11
  • 【java 多線程】守護(hù)線程與非守護(hù)線程的詳解

    【java 多線程】守護(hù)線程與非守護(hù)線程的詳解

    這篇文章主要介紹了java守護(hù)線程與非守護(hù)線程,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • 工作中Java集合的規(guī)范使用操作詳解

    工作中Java集合的規(guī)范使用操作詳解

    這篇文章主要為大家詳細(xì)介紹了工作中Java集合使用時(shí)需要注意的規(guī)范,文中的示例代碼講解詳細(xì),對(duì)我們使用Java集合有一定的幫助,感興趣的可以了解一下
    2022-11-11
  • 深入理解Mybatis一級(jí)緩存

    深入理解Mybatis一級(jí)緩存

    客戶端向數(shù)據(jù)庫(kù)服務(wù)器發(fā)送同樣的sql查詢語(yǔ)句,如果每次都去訪問(wèn)數(shù)據(jù)庫(kù),會(huì)導(dǎo)致性能的降低,那么怎么提高呢?下面小編給大家分享下mybatis為我們提供了一級(jí)緩存的策略
    2016-12-12

最新評(píng)論