Kotlin 简介
Kotlin是由 JetBrains 开发的一种静态类型的通用编程语言,它构建了 IntelliJ IDEA、PhpStorm、Appcode 等世界一流的 IDE。它于 2011 年由 JetBrains 首次引入,是一种用于 JVM 的新语言。 Kotlin 是面向对象的语言,是一种比Java“更好的语言”,但仍可与Java代码完全互操作。
Kotlin 由 Google 赞助,于 2017 年宣布为Android 开发的官方语言之一。
Kotlin 的例子——
fun main()
{
println("Hello Geeks");
}
Kotlin 的主要特点:
- 静态类型——静态类型是一种编程语言特性,这意味着每个变量和表达式的类型在编译时都是已知的。尽管它是静态类型语言,但它不需要您显式指定您声明的每个变量的类型。
- 数据类——在 Kotlin 中,有一些数据类可以自动生成样板,例如 equals、hashCode、toString、getter/setter 等等。
考虑下面的例子——
/* Java Code */ class Book { private String title; private Author author; public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public Author getAuthor() { return author; } public void setAuthor(Author author) { this.author = author; } }
但在 Kotlin 中,只有一行用于定义上述类——
/* Kotlin Code */ data class Book(var title:String, var author:Author)
- 简洁——它大大减少了用其他面向对象编程语言编写的额外代码。
- 安全——它通过支持可空性作为其系统的一部分来提供最烦人和恼人的 NullPointerExceptions 的安全性。
默认情况下,Kotlin 中的每个变量都是非空的。String s = "Hello Geeks" // Non-null
如果我们尝试分配 s null 值,那么它会给出编译时错误。所以,
s = null // compile time error
要将空值分配给任何字符串字符串,应将其声明为可为空的。
String nullableStr? = null // compiles successfully
length()函数也在可为空的字符串上禁用。
- 与Java互操作– Kotlin 在Java虚拟机 (JVM) 上运行,因此它完全可以与Java互操作。我们可以轻松地从 kotlin 访问 use Java代码和从Java访问 kotlin 代码。
- 函数式和面向对象的能力——Kotlin 拥有丰富的许多有用的方法,包括高阶函数、lambda 表达式、运算符重载、惰性求值、运算符重载等等。
高阶函数是一个接受函数作为参数或返回函数或两者都可以的函数。高阶函数的例子——
fun myFun(company: String,product: String, fn: (String,String) -> String): Unit { val result = fn(company,product) println(result) } fun main(args: Array){ val fn:(String,String)->String={org,portal->"$org develops $portal"} myFun("JetBrains","Kotlin",fn) }
输出:
JetBrains develops Kotlin
- 智能转换——它显式地对不可变值进行类型转换,并自动将值插入到其安全转换中。
如果我们尝试在不进行安全转换的情况下访问可空类型的 String (String? = “BYE”),则会产生编译错误。fun main(args: Array){ var string: String? = "BYE" print(string.length) // compile time error } }
fun main(args: Array){ var string: String? = "BYE" if(string != null) { // smart cast print(string.length) } }
- 编译时间——它具有更高的性能和更快的编译时间。
- 工具友好——它具有出色的工具支持。任何Java IDE——IntelliJ IDEA、Eclipse 和 Android Studio 都可以用于 Kotlin。我们也可以从命令行运行 Kotlin 程序。
Kotlin 语言的优点:
- 易于学习 - Basic 几乎与Java类似。如果有人使用Java工作,那么很快就会很容易理解。
- Kotlin 是多平台的——Java 的所有 IDE 都支持 Kotlin,因此您可以编写程序并在任何支持Java的机器上执行它们。
- 它比Java安全得多。
- 它允许通过使用高级框架在您的新 Kotlin 项目中使用Java框架和库,而无需更改Java中的整个项目。
- Kotlin 编程语言,包括编译器、库和所有工具都是完全免费和开源的,可在 github 上获得。这是 Github 的链接 https://github.com/JetBrains/kotlin
Kotlin 语言的应用:
- 您可以使用 Kotlin 构建 Android 应用程序。
- Kotlin 还可以编译为 JavaScript,并使其可用于前端。
- 它还被设计用于 Web 开发和服务器端开发。