Kotlin有三种不同的文件扩展名,你可以用它们来编写Kotlin代码:
.kt扩展名.kts扩展名或Kotlin脚本.ktm扩展名或Kotlin模块
本教程将帮助你了解上述三种扩展名。
Kotlin .kt文件扩展名
.kt 扩展名是最常见的Kotlin文件扩展名,用于编写Kotlin源代码。
当你为你的Android应用程序编写代码时,这个扩展名被广泛使用。
一个.kt 文件的集合需要一个main 函数作为Kotlin应用程序的入口点:
fun main() {
println("Hello world!")
}
在Android中,这个main 函数被替换成MainActivity 类,当你创建一个新的应用程序时,Android Studio会生成这个类:
package com.example.kotlinbasic
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
}
}
如果没有main 函数或MainActivity 类,Kotlin会在运行时抛出一个错误,说Function 'main' not found 或Default Activity not found 。
当你为Android或Kotlin应用程序编写代码时,你需要使用.kt 扩展名。
Kotlin .kts文件扩展名
.kts 扩展名也被称为Kotlin脚本扩展名。
这个文件扩展名允许你在不编译的情况下运行Kotlin代码。.kts 文件内的代码将被逐行执行。
要运行一个.kts 文件,你需要用-script 选项运行kotlinc 命令:
kotlinc -script <filename>.kts
在Android Studio中,当你创建一个Kotlin scratch文件时,通常会使用.kts 文件。
在一个.kts 文件里面,Android Studio可以执行你的Kotlin代码,而不需要编译你的整个Android应用代码。
Kotlin .ktm文件扩展名
.ktm 扩展名也被称为Kotlin模块扩展名。
这个扩展名相当神秘,因为我从未看到它在任何地方被使用。
例如,我试图在库中搜索 kotless.ktm extension的使用,但在任何地方都找不到。
看一下下面的截图:

在kotless中搜索.ktm文件
但我可以在同一个库中找到.kts 文件,如下图所示:

在kotless中搜索.kts文件
似乎所有开源的Kotlin库都只用.kt 文件来表示他们的库源代码,所以这个文件扩展名可能不再使用了。
现在你已经了解了Kotlin语言可以使用的文件扩展名。干得好!👍