开篇词
学习目的
知道 Kotlin 已经有很长时间了,一直没有深入学习过。
本次趁着有时间,就学习一下。
本系列学习笔记
主要做记录的作用,便于以后重温查阅。
本教程主要整理自网络,以及自己的学习源码+心得。
Kotlin
Kotlin 是一种在 Java 虚拟机上运行的静态类型编程语言,被称之为 Android 世界的Swift,由 JetBrains 设计开发并开源。
Kotlin 可以编译成Java字节码,也可以编译成 JavaScript,方便在没有 JVM 的设备上运行。
在Google I/O 2017中,Google 宣布 Kotlin 成为 Android 官方开发语言。
为什么选择 Kotlin?
简洁: 大大减少样板代码的数量。
安全: 避免空指针异常等整个类的错误。
互操作性: 充分利用 JVM、Android 和浏览器的现有库。
工具友好: 可用任何 Java IDE 或者使用命令行构建。
复用已有库
这个是非常重要的一个特性,新创建一个语言,最好可以复用已有的代码库。
Hello Kotlin
此处直接使用 Idea 编辑 Kotlin 开发。
入门代码
package com.github.houbb.kotlin.note.overview
fun main(args: Array<String>) {
print("hello kotlin")
}
对比的 java
package com.github.houbb.kotlin.note.overview;
/**
* @author binbin.hou
* @since 1.0.0
*/
public class Hello {
public static void main(String[] args) {
System.out.println("hello java");
}
}
编译
使用 kotlin 编译:
$ kotlinc hello.kt -include-runtime -d hello.jar
-d: 用来设置编译输出的名称,可以是 class 或 .jar 文件,也可以是目录。
-include-runtime: 让 .jar 文件包含 Kotlin 运行库,从而可以直接运行。
如果你想看所有的可用选项,运行:
$ kotlinc -help
运行应用
$ java -jar hello.jar
Hello, World!
编译成库
若需要将生成的 jar 包供其他 Kotlin 程序使用,可无需包含 Kotlin 的运行库:
$ kotlinc hello.kt -d hello.jar
由于这样生成的 .jar 文件不包含 Kotlin 运行库,所以你应该确保当它被使用时,运行时在你的 classpath 上。
你也可以使用 kotlin 命令来运行 Kotlin 编译器生成的 .jar 文件
$ kotlin -classpath hello.jar HelloKt
HelloKt 为编译器为 hello.kt 文件生成的默认类名。