Kotlin是由JetBrains公司开发的基于JVM的语言,而JetBrains开发了Intellij,而Android Studio又基于Intellij。因此,对于我们Android开发人员来说,Kotlin即容易学习,又容易使用。
Kotlin相比于Java的优势在哪里?
- 更易表现:换言之,你可以编写更少的代码实现同样的功能;
- 更加安全:Kotlin是空安全的,它在编译时就处理了空指针异常,因此无需担心运行时的空指针异常。但是如果你需要对某个对象为null时进行相应处理,那么你需要明确地进行判断;
- 函数式:使用了很多函数式编程的概念,比如lambda表达式、Collections的处理方式。
- 可以扩展函数:意味着可以扩展类的更多特性,甚至没有权限去访问这个类的代码
- 高度互操作性:可以完美地实现Java和Kotlin混编
缺点:
- 有时候会抛出莫名其妙的错误,你只能clean(没遇到过)
- 由于在Kotlin,几乎所有的方法、类都是final的,这让使用Mock非常头疼
- 暂时没有静态代码检测
- ==替代equals()的使用。由于在一段时间内,你在日常开发中会出现java和kotlin混用的情况,然后同样的代码缺有差异。
引用Kotlin官网对自家孩子的评价。