最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Kotlin基礎(chǔ)教程之伴生對象,getter,setter,內(nèi)部,局部,匿名類,可變參數(shù)

 更新時間:2017年05月27日 10:18:46   作者:天命劍主  
這篇文章主要介紹了Kotlin基礎(chǔ)教程之伴生對象,getter,setter,內(nèi)部,局部,匿名類,可變參數(shù)的相關(guān)資料,需要的朋友可以參考下

先來看一個名為Message的類

在這個類中有一段包含在companion object中的代碼,需要說一下的是,Kotlin的class并不支持static變量,所以需要使用companion object來聲明static變量,其實這個platformStatic變量也不是真正的static變量,而是一個伴生對象,

這個伴生對象位于Message類中定義的一個叫做Companion的內(nèi)部類中,如圖:


可以看到在Kotlin中編譯器自動生成類是很常見的事情,那么這個伴生對象作何理解呢?

我的理解是,伴生對象與單例模式相關(guān),這個對象是Companion類的對象,伴隨著Message類而生.

Companion這個內(nèi)部類是編譯器自動生成的,我們也可以自己定義內(nèi)部類,如:


回到Message類中,我們可以看到在info和what域下還存在get和set,不錯,這就是getter和setter函數(shù),一般getter函數(shù)使用默認的就好,setter函數(shù)其實就是在賦值的時候進行一些處理,為了防止setter函數(shù)無限遞歸調(diào)用,在類中可以使用$符號訪問成員變量,可以繞過getter和setter函數(shù)直接訪問成員變量.

當然,在Kotlin中除了內(nèi)部類,還有匿名類和局部類,如圖:

匿名類:

可以看到r這個變量所屬類型是匿名的(no name provided)

局部類:


局部類,就是在函數(shù)內(nèi)部定義的類,只在函數(shù)內(nèi)部可以訪問.

在Kotlin中還提供了一些額外的特性,比如可變參數(shù)

這段代碼運行結(jié)果如下:

讓我們測試一下Message類:

可見Kotlin的getter和setter所起的作用

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

相關(guān)文章

  • 分布式之全面了解Kafka的使用與特性

    分布式之全面了解Kafka的使用與特性

    Kafka?是我工作多年使用最多的消息中間件?,特點是擁有巨大吞吐量(數(shù)百萬/秒),作為當下最流行的分布式,可水平擴展,可容錯的“消息系統(tǒng)”,下面跟隨小編看下分布式之全面了解Kafka的使用與特性
    2021-11-11
  • Idea設(shè)置spring boot應(yīng)用配置參數(shù)的兩種方式

    Idea設(shè)置spring boot應(yīng)用配置參數(shù)的兩種方式

    本文通過兩個方式介紹Idea設(shè)置spring boot應(yīng)用配置參數(shù),一種是配置VM options的參數(shù)時要以:-DparamName的格式設(shè)置參數(shù),第二種可以參考下本文詳細設(shè)置,感興趣的朋友跟隨小編一起看看吧
    2023-11-11
  • SpringCloud如何創(chuàng)建一個服務(wù)提供者provider

    SpringCloud如何創(chuàng)建一個服務(wù)提供者provider

    這篇文章主要介紹了SpringCloud如何創(chuàng)建一個服務(wù)提供者provider,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • spring如何解決循環(huán)依賴問題詳解

    spring如何解決循環(huán)依賴問題詳解

    這篇文章主要給大家介紹了關(guān)于spring如何解決循環(huán)依賴問題的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-03-03
  • Javaweb接收表單數(shù)據(jù)并處理中文亂碼

    Javaweb接收表單數(shù)據(jù)并處理中文亂碼

    這篇文章主要介紹了Javaweb接收表單數(shù)據(jù)并處理中文亂碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-07-07
  • java開發(fā)實現(xiàn)訂閱到貨通知幫我們買到想買的東西

    java開發(fā)實現(xiàn)訂閱到貨通知幫我們買到想買的東西

    這篇文章主要為大家介紹了java開發(fā)實現(xiàn)訂閱到貨通知幫我們買到想買的東西示例demo,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-02-02
  • Struts2攔截器Interceptor的原理與配置實例詳解

    Struts2攔截器Interceptor的原理與配置實例詳解

    攔截器是一種AOP(面向切面編程)思想的編程方式.它提供一種機制是開發(fā)者能夠把相對獨立的代碼抽離出來,配置到Action前后執(zhí)行。下面這篇文章主要給大家介紹了關(guān)于Struts2攔截器Interceptor的原理與配置的相關(guān)資料,需要的朋友可以參考下。
    2017-11-11
  • spring級聯(lián)屬性賦值的兩種方式解析

    spring級聯(lián)屬性賦值的兩種方式解析

    這篇文章主要介紹了spring級聯(lián)屬性賦值的兩種方式解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-01-01
  • Java用戶登錄驗證代碼

    Java用戶登錄驗證代碼

    本文給大家使用java代碼實現(xiàn)用戶登錄驗證功能,當用戶輸入三次錯誤后,用戶不可以再次登錄的。具體實現(xiàn)代碼,大家可以參考下本教程
    2016-08-08
  • RocketMQ?Namesrv架構(gòu)工作原理詳解

    RocketMQ?Namesrv架構(gòu)工作原理詳解

    這篇文章主要為大家介紹了RocketMQ?Namesrv架構(gòu)工作原理詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-08-08

最新評論

哈巴河县| 响水县| 汕头市| 蒙阴县| 津市市| 社会| 图片| 宜宾县| 罗山县| 昌江| 冷水江市| 吴江市| 离岛区| 上饶市| 金昌市| 辉南县| 新郑市| 定边县| 河曲县| 凌源市| 宾阳县| 鹤山市| 周宁县| 河池市| 景谷| 巴彦淖尔市| 九寨沟县| 新乐市| 平塘县| 灵宝市| 永州市| 安岳县| 连江县| 丰镇市| 夏河县| 隆德县| 夹江县| 洞头县| 华亭县| 丹棱县| 嵩明县|