zoukankan      html  css  js  c++  java
  • 什么是Kotlin?Java的替代语言?

    什么是Kotlin

    Kotlin是一个基于JVM的新的编程语言,2010年由IntelliJ IDEA所在的JetBrains公司开发,自2012年以来一直开源。

    Kotlin可以编译成Java字节码,也可以编译成JavaScript,方便在没有JVM的设备上运行。

    Kotlin是面向对象和功能编程功能的JVM和Android的通用、开源、静态的实用的编程语言。它专注于交互性、安全性及清晰度和工具的支持。

    设计理念

    1、创建一种兼容Java的语言

    2、让它比Java更安全,能够静态检测常见的陷阱。如:引用空指针

    3、让它比Java更简洁,通过支持variable type inference,higher-order functions (closures),extension functions,mixins and first-class delegation等实现。

    4、让它比最成熟的竞争对手Scala语言更加简单。

    Kotlin优势

    1、简洁: 大大减少样板代码的数量。

    2、安全: 避免空指针异常等整个类的错误。

    3、互操作性: 充分利用 JVM、Android 和浏览器的现有库。

    4、工具友好: 可用任何 Java IDE 或者使用命令行构建。

    代码转换

    Java代码:

    public class JavaCode {
        public String toJSON(Collection<Integer> collection) {
            StringBuilder sb = new StringBuilder();
            sb.append("[");
            Iterator<Integer> iterator = collection.iterator();
            while (iterator.hasNext()) {
                Integer element = iterator.next();
                sb.append(element);
                if (iterator.hasNext()) {
                    sb.append(", ");
                }
            }
            sb.append("]");
            return sb.toString();
        }
    }

    转换成Kotlin代码:

    fun toJSON(collection: Collection<Int>): String {
        val sb = StringBuilder()
        sb.append("[")
        val iterator = collection.iterator()
        while (iterator.hasNext())
        {
            val element = iterator.next()
            sb.append(element)
            if (iterator.hasNext())
            {
                sb.append(", ")
            }
        }
        sb.append("]")
        return sb.toString()
    }

    看起来,Kotlin就像是一个简化的Java版本。Java和Kotlin两个语言可以互相转换。

    未来发展

    在Google I/O 2017中,Google 宣布 Kotlin 成为 Android 官方开发语言。

    需要注意的是目前在国内用的比较少,Kotlin也是比较赶潮流的语言,在开发语言中排名和影响力也比较落后,从Java转到Kotlin也非常容易,所有,有兴趣的同学可以研究试玩下。

    推荐阅读

    干货:2TB架构师四阶段视频教程

    面经:史上最全Java多线程面试题及答案

    面经:史上最全阿里高级Java面试题

    面经:史上最全Spring面试题

    教程:最全Spring Boot全套视频教程

    书籍:进阶Java架构师必看的15本书

    工具:推荐一款在线创作流程图、思维导图软件

    分享Java干货,高并发编程,热门技术教程,微服务及分布式技术,架构设计,区块链技术,人工智能,大数据,Java面试题,以及前沿热门资讯等。

  • 相关阅读:
    Python 实现AEC CBC 加密解密方式
    redis 发布订阅方法与缺陷
    python paramiko 传输下载文件
    Redis 配置文件
    Redis 命令
    window11 | 虚拟机vmWare安装windows11
    十万个为什么 | 文化001-为什么猜灯谜又叫做打灯谜
    ffmpeg | 常用命令使用
    ffmpeg | 常用命令使用
    Adobe系列 | Animate(01)-软件安装
  • 原文地址:https://www.cnblogs.com/java-stack/p/11952641.html
Copyright © 2011-2022 走看看