kotlin 巢狀類和內部類

2021-10-02 01:50:10 字數 494 閱讀 8013

在kotlin中乙個類可以巢狀在另外乙個類中例如

class outter

}

在潛逃類的基礎上我們在潛逃在內部的類新增乙個inner關鍵字,內部的類就成了內部類,他會持有外部類的引用

class outer 

}val demo =

outer()

.inner()

.foo()

// == 1

在使用內部類的時候我們會涉及到this關鍵字的使用,在乙個類當中this表示的是當前的類的物件,在擴充套件函式或者帶有接收者的函式字面值中, this 表示在點左側傳遞的 接收者 引數,如果 this 沒有限定符,它指的是最內層的包含它的作用域。要引用其他作用域中的 this,請使用 標籤限定符,要訪問來自外部作用域的this(乙個類 或者擴充套件函式, 或者帶標籤的帶有接收者的函式字面值)我們使用this@label,其中 @label 是乙個代指 this **的標籤:

Kotlin 巢狀類和內部類

巢狀類是什麼 巢狀類就是乙個類巢狀在另乙個類裡面巢狀類的寫法 class qiantaoouter 3.巢狀類例項化 外部類.內部類 var qiantaoinner qiantaoouter.qiantaoinner 4.巢狀類中 內部的類不能獲取外部類的屬性和方法內部類是什麼 內部類是一種特殊的...

Kotlin學習筆記 類巢狀與內部類

在乙個類的內部宣告乙個類,叫做類巢狀。class outer var name string 宣告為inner的巢狀類叫做內部類,內部類可以呼叫外部類的屬性,但是巢狀類卻不行。class outer var name string 匿名內部類,就是在乙個類內部,直接例項化乙個類物件當做引數的類 cl...

內部類,匿名類,巢狀類

inner class 內部類 定義在類中的類。nested class 巢狀類 是靜態 static 內部類。1.要建立巢狀類的物件,並不需要其外圍類的物件。2.不能從巢狀類的物件中訪問非靜態的外圍類物件。anonymous inner class 匿名內部類 匿名的內部類是沒有名字的內部類。匿名...