Kotlin - 關鍵字



Kotlin 關鍵字是在 Kotlin 程式設計中使用的預定義保留字,對編譯器具有特殊含義。這些詞不能用作識別符號(變數名、包名、函式名等),如果使用則編譯器會丟擲異常。

Kotlin 使用fun關鍵字來定義函式,所以如果我們嘗試將其用作變數名,則會發生異常。例如

fun main() {
   var fun = "Zara Ali"  // Not allowed, throws an exception
   var age = 19          // Valid variable name

   println("Name = $fun")
   println("Age = $age")
}

執行以上 Kotlin 程式時,將生成以下輸出

main.kt:2:7: error: expecting property name or receiver type
   var fun = "Zara Ali"  // Not allowed, throws an exception
      ^
main.kt:2:11: error: expecting '('
   var fun = "Zara Ali"  // Not allowed, throws an exception
          ^
main.kt:5:21: error: keyword cannot be used as a reference
   println("Name = $fun")
                    ^

Kotlin 關鍵字已分為三大類:(a) 硬關鍵字 (b) 軟關鍵字 (c) 修飾符關鍵字

作為良好的程式設計實踐,強烈建議在 Kotlin 中編碼時不要使用任何提到的關鍵字來命名任何識別符號。

(a) Kotlin 硬關鍵字

以下是硬關鍵字列表,它們不能用作識別符號

as as? break class
continue do else false
for fun if in
!in interface is !is
null object package return
super this throw true
try typealias typeof val
var when while

(b) Kotlin 軟關鍵字

以下是關鍵字(軟)在適用時的列表,並且可以在其他上下文中用作識別符號

by catch constructor delegate
dynamic field file finally
get import init param
property receiver set setparam
value where

(c) Kotlin 修飾符關鍵字

以下是宣告修飾符列表中充當關鍵字的標記列表,並且可以在其他上下文中用作識別符號

actual abstract annotation companion
const crossinline data enum
expect external final infix
inline inner internal lateinit
noinline open operator out
override private protected public
reified sealed suspend tailrec
vararg

測驗時間 (面試 & 考試準備)

Q 1 - 以下哪個是 Kotlin 中的硬關鍵字

A - var

B - val

C - for

D - 以上所有

答案:D

解釋

所有提到的關鍵字都來自 Kotlin 中的硬關鍵字列表。

Q 2 - 確定以下程式的哪一行會引發錯誤

   var name = "Zara Ali"
   var age = 19
   var class = "6th"
   var height = 5.3

A - 第一行

B - 第二行

C - 第三行

D - 最後一行

答案:C

解釋

這裡第 3 行會引發錯誤,因為我們使用了硬關鍵字class來定義變數。

廣告