Kotlin小知識點總結(jié)

1.關(guān)于<code>Class</code>
在Kotlin中<code>Class</code>的默認(rèn)修飾符是final,是不可以被繼承和重寫的,如果需要進行重寫,可以在類名前面加修飾符<code>open</code>,像下面這樣:

open class RunClass {}

2.關(guān)于構(gòu)造函數(shù)
1).當(dāng)我們只需要一個構(gòu)造函數(shù)的時候,可以直接有下面這種方式進行聲明:

 class CustomView(context: Context?, attrs: AttributeSet?, defStyleAttr: Int) : View(context, attrs, defStyleAttr) {

}

2).有時候一個構(gòu)造函數(shù)不夠用的時候,可以使用<code>constructor</code>來聲明:

constructor(context: Context) : super(context) {
    init(context)
}
constructor(context: Context, attributeSet: AttributeSet) : super(context, attributeSet) {
    init(context, attributeSet)
}
constructor(context: Context, attributeSet: AttributeSet?, defstyle: Int) : super(context, attributeSet, defstyle) {
    init(context, attributeSet, defstyle)
}

3.<code>static</code>靜態(tài)
在kotlin中是不支持static關(guān)鍵字的,不過提供了另一種方案:<code>companion object</code>關(guān)鍵字里面的內(nèi)容都代表靜態(tài),可以是靜態(tài)變量也可以是靜態(tài)函數(shù)

companion object {
    fun main(context: Context) {
        val child = ChildImpl()
        val run = RunClass(child)
        run.show(context, "haha")
    }
}

4.匿名內(nèi)部類
一般匿名內(nèi)部類里面只有一個方法的時候,Kotlin會默認(rèn)幫我們轉(zhuǎn)成Lambda表達式,但是有多個方法的時候,就需要我們自己來實現(xiàn)了,可以采用下面這種方式:

  viewpager.addOnPageChangeListener(object: ViewPager.OnPageChangeListener {
        override fun onPageScrollStateChanged(state: Int) {

        }

        override fun onPageScrolled(position: Int, positionOffset: Float, positionOffsetPixels: Int) {
            
        }

        override fun onPageSelected(position: Int) {
            
        }
    })

5.和Java的互通
最常用的比如startActivity,我們在Java文件中,該如何啟動kotlin中的><code>activity</code>:

 val intent = Intent(this , MainActivity::class.java)
 startActivity(intent)

這些是目前自己開發(fā)中遇到的一些問題,基本可以滿足一般的kotlin開發(fā)了。
再貼一個kotlin中文教程:http://www.liying-cn.net/kotlin/docs/reference/

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 前言 人生苦多,快來 Kotlin ,快速學(xué)習(xí)Kotlin! 什么是Kotlin? Kotlin 是種靜態(tài)類型編程...
    任半生囂狂閱讀 26,686評論 9 118
  • 一:java概述:1,JDK:Java Development Kit,java的開發(fā)和運行環(huán)境,java的開發(fā)工...
    ZaneInTheSun閱讀 2,806評論 0 11
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 34,638評論 18 399
  • Google在今年的IO大會上宣布,將Android開發(fā)的官方語言更換為Kotlin,作為跟著Google玩兒An...
    藍灰_q閱讀 77,186評論 31 489
  • 在這個快節(jié)奏的時代里,我們喜歡追求慢節(jié)奏的生活;在這個360行,行行出狀元的年代里,我們四處尋找屬于我們自己的位置...
    LITTLECOCOA_閱讀 1,026評論 0 15

友情鏈接更多精彩內(nèi)容