文档章节

Kotlin(一)-->Android Studio配置Kotlin开发环境

geek_loser
 geek_loser
发布于 2017/05/21 19:35
字数 930
阅读 12
收藏 1
点赞 0
评论 0

新的产品开发中Android端已经完全使用Kotlin作为开发语言了,目前为止还没有发现什么不适的地方。所以今天我们将讲解一下如何在Android Studio中配置Kotlin开发环境,算是为Kotlin讲解一下入门知识,后续会慢慢更新kotlin相关知识。

  • 什么是Kotlin?

这里暂时引用一下百度百科中对Kotlin的讲解:

Kotlin 是一个基于 JVM 的新的编程语言,由 JetBrains 开发。

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

JetBrains,作为目前广受欢迎的Java IDE IntelliJ 的提供商,在 Apache 许可下已经开源其Kotlin 编程语言。

  • Kotlin的特性

Kotlin是一种兼容Java的语言;

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

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

Kotlin可与Java语言无缝通信。这意味着我们可以在Kotlin代码中使用任何已有的Java库;同样的Kotlin代码还可以为Java代码所用;

Kotlin在代码中很少需要在代码中指定类型,因为编译器可以在绝大多数情况下推断出变量或是函数返回值的类型。这样就能获得两个好处:简洁与安全;

  • Kotlin相关网址

Kotlin官网
http://kotlinlang.org

l Kotlin-github地址
https://github.com/JetBrains/kotlin

  • 使用Android Studio下载Kotlin相关插件

执行 Settings -> plugins -> BrowseRepositories中搜索“Kotlin”

这里写图片描述

安装Kotlin和Kotlin Extensions…

  • 使用Kotlin创建Kotlin File/Class或者是Kotlin Activity

Kotlin插件安装成功后,执行new操作,会发现弹窗多出了两个Kotlin相关选项:

1)“KotlinFile/Class”:一般Kotlin类

2)“Kotlin Activity”:Activity类

这里写图片描述

2.3配置Kotlin

当我们第一次创建一个Kotlin类后,会弹出一个Configure Kotlin的弹窗:

这里写图片描述

点击as Kotlin module,则会进入Kotlin配置页面,如下图:

这里写图片描述

根据需求你可以选择配置某个模块或全部的模块,以及Kotlin编译器的版本,点击OK即可。

配置完成之后在项目的跟build.gradle中:

buildscript {
    ext.kotlin_version = '1.0.4'
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.2.2'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

会多出这样两样代码,而在module的build.gradle中:

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

android {
    ...
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    ...
    compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

这样表示当前的module已经支持kotlin语言了,然后我们看一下我们创建的Kotlin类:MKotlin

/**
 * Created by aaron on 2016/10/25.
 */
class MKotlin {
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5

很简单有木有,后续我们会跟进关于Kotlin相关语法的解释说明。然后创建一个Activity呢?

class MActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_m)
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

似乎和创建普通的Java Activity也类似,这样我们开发Android项目的时候就可以直接使用Kotlin类或者是Kotlin Activity了。

Android Studio中还有一个关于Kotlin很实用的操作,就是将Java源代码转化为Kotlin代码:

执行code–> Convert Java File to Kotlin File

这里写图片描述

这样你的Java代码就转化成了Kotlin代码了,若有Kotlin相关语法不熟悉的时候一个小技巧是先写Java代码,然后将其转化为Kotlin代码。

后续计划写一些关于Kotlin的文章,欢迎关注O(∩_∩)O哈哈~

本文转载自:http://blog.csdn.net/qq_23547831/article/details/52857346

共有 人打赏支持
geek_loser
粉丝 3
博文 74
码字总数 18849
作品 0
朝阳
浅谈Kotlin(一):简介及Android Studio中配置

浅谈Kotlin(一):简介及Android Studio中配置 浅谈Kotlin(二):基本类型、基本语法、代码风格 浅谈Kotlin(三):类 浅谈Kotlin(四):控制流 前言:   今日新闻:谷歌宣布,将Kotli...

听着music睡
2017/05/18
0
0
高手问答第 197 期 —— Kotiln “上位”一周年,Kotlin 问答专场等你提问!

OSCHINA 本期高手问答(2018 年 5 月 15 日 — 5 月 21 日)我们邀请到了欧阳燊老师@ouyangshen 和大家一起探讨有关 Kotlin 开发的问题。 Kotlin 诞生于 2011 年,作为后起之秀的它虽然拥有代码...

局长
05/14
0
0
第14章 使用Kotlin 进行 Android 开发

第14章 使用Kotlin 进行 Android 开发 根据Realm Report (2017-Q4,https://realm.io/realm-report/2017-q4) ,过去的一年在Android 端的开发:Java 从 95% 降低到 Java 85%, 而 Kotlin 从 ...

东海陈光剑
2017/11/01
0
0
Android Studio 3.3 Canary 发布,包含重要的 bug 修复

Android Studio 3.3 Canary 已发布。该版本带来了不少的新特性,还修复了一些重要的 bug,例如在打包 APK 时,Gradle 会消耗大量内存,从而导致出现 Java 堆栈溢出的错误。 新特性 The flag...

局长
06/30
0
0
Kotlin Weekly 中文周报 —— 101

Kotlin 开发中文周报 101 Kotlin 代码检查在美团的探索与实践 (juejin.im) Kotlin 有着诸多的特性,比如空指针安全、方法扩展、支持函数式编程、丰富的语法糖等。这些特性使得 Kotlin 的代码...

DoubleThunder
07/09
0
0
Kotlin:所有的一切还是从Hello Kotlin开始

Kotlin和Java也一样可以有多种的开发方式,我们可以根据自己的实际需求进行选择。如下: 1. 终端命令行进行Kotlin的编写、编译和运行,类似与Java中的javac编译、java运行; 2. 使用Intelli...

p106786860
2017/07/29
0
0
浅谈Kotlin(二):基本类型、基本语法、代码风格

浅谈Kotlin(一):简介及Android Studio中配置 浅谈Kotlin(二):基本类型、基本语法、代码风格 浅谈Kotlin(三):类 浅谈Kotlin(四):控制流 通过上面的文章,在Android Studio中我们已...

听着music睡
2017/05/19
0
0
2015年Android开发新技术

开发工具 Android Studio : Google 官方放弃 Eclipse 和Android Studio 普及。AS 虽然不算新,但是对 Android Studio 这个软件的更新速度快的惊人,有大量的新功能发布。例如支持很多注解代...

程序袁_绪龙
2015/07/24
0
0
日新月异的Android新技术

学习Android技术开发已经很久啦,感觉Android技术开发太快,几乎每年都有很多新东西出现,想要覆盖所有新东西感觉也不太可能,我这里主要说一下主要的 Android 的主要新技术发展,其实了解 ...

crossmix
2015/11/09
0
0
快速高效学习 Kotlin | Kotlin Bootcamp 课程介绍

Kotlin Bootcamp Udacity 是一套免费、自控进度的在线课程。通过该课程,您可学习到 Kotlin 编程语言的各项基本知识。此次的 Kotlin 入门课程由 Google 的专家与 Udacity 携手打造,适合于有...

谷歌开发者
05/30
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

about git flow

  昨天元芳做了git分支管理规范的分享,为了拓展大家关于git分支的认知,这里我特意再分享这两个关于git flow的链接,大家可以看一下。 Git 工作流程 Git分支管理策略   git flow本质上是...

qwfys
今天
2
0
Linux系统日志文件

/var/log/messages linux系统总日志 /etc/logrotate.conf 日志切割配置文件 参考https://my.oschina.net/u/2000675/blog/908189 dmesg命令 dmesg’命令显示linux内核的环形缓冲区信息,我们可...

chencheng-linux
今天
1
0
MacOS下给树莓派安装Raspbian系统

下载镜像 前往 树莓派官网 下载镜像。 点击 最新版Raspbian 下载最新版镜像。 下载后请,通过 访达 双击解压,或通过 unzip 命令解压。 检查下载的文件 ls -lh -rw-r--r-- 1 dingdayu s...

dingdayu
今天
1
0
spring boot使用通用mapper(tk.mapper) ,id自增和回显等问题

最近项目使用到tk.mapper设置id自增,数据库是mysql。在使用通用mapper主键生成过程中有一些问题,在总结一下。 1、UUID生成方式-字符串主键 在主键上增加注解 @Id @GeneratedValue...

北岩
今天
2
0
告警系统邮件引擎、运行告警系统

告警系统邮件引擎 cd mail vim mail.py #!/usr/bin/env python#-*- coding: UTF-8 -*-import os,sysreload(sys)sys.setdefaultencoding('utf8')import getoptimport smtplibfr......

Zhouliang6
今天
1
0
Java工具类—随机数

Java中常用的生成随机数有Math.random()方法及java.util.Random类.但他们生成的随机数都是伪随机的. Math.radom()方法 在jdk1.8的Math类中可以看到,Math.random()方法实际上就是调用Random类...

PrivateO2
今天
2
0
关于java内存模型、并发编程的好文

Java并发编程:volatile关键字解析    volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在...

DannyCoder
昨天
1
0
dubbo @Reference retries 重试次数 一个坑

在代码一中设置 成retries=0,也就是调用超时不用重试,结果DEBUG的时候总是重试,不是0吗,0就不用重试啊。为什么还是调用了多次呢? 结果在网上看到 这篇文章才明白 https://www.cnblogs....

奋斗的小牛
昨天
2
0
数据结构与算法3

要抓紧喽~~~~~~~放羊的孩纸回来喽 LowArray类和LowArrayApp类 程序将一个普通的Java数组封装在LowArray类中。类中的数组隐藏了起来,它是私有的,所以只有类自己的方法才能访问他。 LowArray...

沉迷于编程的小菜菜
昨天
1
0
spring boot应用测试框架介绍

一、spring boot应用测试存在的问题 官方提供的测试框架spring-boot-test-starter,虽然提供了很多功能(junit、spring test、assertj、hamcrest、mockito、jsonassert、jsonpath),但是在数...

yangjianzhou
昨天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部