从Java到Kotlin(一)

目录

1.什么是Kotlin
2.为什么要选择Kotlin
3.如何使用Kotlin来开发Android
4.与Java的互操作性


1.什么是Kotlin

谷歌在2017年中举行的I/O开发者大会上宣布,将Kotlin语言作为安卓开发的一级编程语言。Kotlin由JetBrains公司开发,与Java 100%互通,并具备诸多Java尚不支持的新特性。JetBrains在2010年首次推出Kotlin编程语言,并在次年将之开源。Android Studio3.0后的版本会提供对Kotlin的支持。


2.为什么要选择Kotlin

上图来自 Kotlin的官网,列举了4个词:

  • 简洁 举个例子,在AndroidStudio里分别用Kotlin和Java创建下图的模板
    可以看到,Kotlin一共用了84行,而Java用了101行。由此可得,Kotlin比Java代码量更少,更简洁。 如果这个例子不够说服力的话,再举一个。 在开发中我们经常用到的实体类,用Java写的话是这样的
class User {
    private String name;

    public Person(String name) {
        this.name = name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public void getName() {
        return name;
    }
}
复制代码

而用Kotlin写是这样的

data class User(var name: String)
复制代码

没错就是这么简单!

  • 安全 Kotlin是空安全的,在编译时期就处理了可能会产生空指针的情况,避免了执行代码时出现空指针异常。举个例子: 如果用Java中定义一个String可以这样写
String str;//默认为null
复制代码

如果我们没有给这个str赋值时,可能在其他操作中出现空指针异常。 如果用Kotlin这样定义一个String,结果如下图

编译不通过,除非我们这样写

var str: String? = null//如果str为空,则等于null
复制代码

这样编译才能通过。虽然都为null,但是Kotlin会检查一遍可能产生空指针的地方,能够排除大量的空指针异常。

  • 互操作性 Kotlin与 Java100% 可互操作,Kotlin的项目可以使用所有的用Java写的代码和库,也可以在一个项目中使用Kotlin和Java两种语言混合编程。

  • 工具有好 Kotlin和AndroidStudio都是出自JetBrains,工具自然少不了对语言的支持。


3.如何使用Kotlin来开发Android

  • 如果你的AndroidStudio版本是3.0之前:

(1).通过 File | Settings | Plugins | Install JetBrains plugin… 搜索并安装 Kotlin 插件。

(2).在根目录的build.gradle中加入

buildscript {
    ext.kotlin_version = '1.2.10'

    repositories {
        mavenCentral()
    }

    dependencies {
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}
复制代码

(3).在app/build.gradle中引入

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'

buildscript {
    ext.kotlin_version = '1.2.10'

    dependencies {
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}
复制代码

完成上面3步即可开始Kotlin之旅

  • 如果你的AndroidStudio版本是3.0之后: (1).内置安装 Kotlin 插件 (2).新建项目,自动引入Kotlin所需的依赖 (3).如果是用AndroidStudio3.0打开之前的项目,参照上面2.3两点

4.与Java的互操作性

  • 安装完Kotlin的插件后,可以新建Kotlin File/Class
  • Kotlin 在设计时就考虑了 Java 互操作性。可以从 Kotlin 中自然地调用现存的 Java 代码,并且在 Java 代码中也可以很顺利地调用 Kotlin 代码。
  • Java代码复制到Kotlin Class里可以转换为Kotlin代码
  • Kotlin 插件自带了一个 Java 到 Kotlin 的转换工具,可以把所有Java代码转换成Kotlin代码,转换工具在Code菜单里面的Convert Java File to Kotlin File选项

总结

谷歌在2017年中举行的I/O开发者大会上宣布,将Kotlin语言作为安卓开发的一级编程语言。在Android开发中,必将会有越来越多人使用Kotlin来开发。本篇文章标题为《从Java到Kotlin(一)》,后续还有几篇文章作为一个系列,目的是让熟悉Java的人看完后可以马上使用Kotlin进行开发。 本篇文章是本系列文章的第一篇,主要简述了 什么是Kotlin为什么要用Kotlin ,Kotlin能写出更简洁的代码,而且Kotlin是空安全的,能杜绝大部分空指针异常。

参考文献:
Kotlin语言中文站、《Kotlin程序开发入门精要》
推荐阅读:
从Java到Kotlin(一)为什么使用Kotlin
从Java到Kotlin(二)基本语法
从Java到Kotlin(三)类和接口
从Java到Kotlin(四)对象与泛型
从Java到Kotlin(五)函数与Lambda表达式
从Java到Kotlin(六)扩展与委托
从Java到Kotlin(七)反射和注解
从Java到Kotlin(八)Kotlin的其他技术
Kotlin学习资料总汇


更多精彩文章请扫描下方二维码关注微信公众号"AndroidCzh":这里将长期为您分享原创文章、Android开发经验等! QQ交流群: 705929135

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值