当前位置:首页 > java技术文章 > Kotlin 开发环境详解及简单实例

实例讲解Kotlin开发环境

  • 发布时间:
  • 作者:码农之家原创
  • 点击:195

这篇文章主要知识点是关于Kotlin、开发环境、的内容,如果大家想对相关知识点有系统深入的学习,可以参阅以下电子书

Java程序员面试笔试宝典
  • 类型:Java大小:73.4 MB格式:PDF作者:何昊
立即下载

Kotlin 开发环境详解及简单实例

Hello Kotlin

在前段时间举办的Google I/O 2017上,Google宣布Kotlin成为Android官方的开发语言,这个最初发布于2011年的语言在短短的时间内就吸引了大量的开发者,而Google使得它进入了更多人的视线。
Kotlin 开发环境详解及简单实例
Kotlin是一种开源的基于JVM的变成语言,由JetBeans公司开发(大概除了使用VS的.net开发者意外,都会或多或少听说或使用过IDEA吧),名字取自圣彼得堡附近的一个小岛(Koltin island)。
Kotlin是一种简单的语言,其主要目标之一就是提供强大语言的同时又保持简单且精简的语法。其主要特性如下所示:
  • 轻量级:这一点对于Android来说非常重要。项目所需要的库应该尽可能的小。Android对于方法数量有严格的限制,Kotlin只额外增加了大约6000个方法。
  • 互操作:Kotlin可与Java语言无缝通信。这意味着我们可以在Kotlin代码中使用任何已有的Java库;因此,即便这门语言还很年轻,但却已经可以使用成百上千的库了。除此之外,Kotlin代码还可以为Java代码所用,这意味着我们可以使用这两种语言来构建软件。你可以使用Kotlin开发新特性,同时使用Java实现代码基的其他部分。
  • 强类型:我们很少需要在代码中指定类型,因为编译器可以在绝大多数情况下推断出变量或是函数返回值的类型。这样就能获得两个好处:简洁与安全。
  • Null安全:Java最大的一个问题就是null。如果没有对变量或是参数进行null判断,那么程序当中就有可能抛出大量的NullPointerException,然而在编码时这些又是难以检测到的。Kotlin使用了显式的null,这会强制我们在必要时进行null检查。‘
  • 更多特性可见官网

环境配置

对于大部分的安卓开发者而言,都是使用Android Studio(或IDEA)进行开发,当然也有很小一部分人仍然坚持使用eclipse,Kotlin对他们都进行了支持,甚至是可以只是用控制台进行编译。本文主要介绍Android Studio下的配置。
在Android Studio的欢迎页中,点击右下角的"Configure",选择"Plugin"进入插件管理界面。然后点击“Install JetBeans Plugin..”,查找Kotlin插件,点击Install即可安装,成功后需要重启Android Studio
Kotlin 开发环境详解及简单实例
项目的创建与配置
创建项目和创建普通的Android项目一样,我们创建一个含有BaseActivity(命名为MainActivity)的项目,加载好之后,可以看到菜单栏Code下多了一个选项“Convert Java File to Kotlin file”。选中MainActivity.java,点击进行convert
转换之前的代码MainActivity.java:
package com.steveyg.hellokotlin; 
 
import android.os.Bundle; 
import android.support.design.widget.FloatingActionButton; 
import android.support.design.widget.Snackbar; 
import android.support.v7.app.AppCompatActivity; 
import android.support.v7.widget.Toolbar; 
import android.view.View; 
import android.view.Menu; 
import android.view.MenuItem; 
 
public class MainActivity extends AppCompatActivity { 
 
 @Override 
 protected void onCreate(Bundle savedInstanceState) { 
  super.onCreate(savedInstanceState); 
  setContentView(R.layout.activity_main); 
 
 } 
} 
转换之后的代码MainActivity.kt:
package com.steveyg.hellokotlin 
 
import android.os.Bundle 
import android.support.design.widget.FloatingActionButton 
import android.support.design.widget.Snackbar 
import android.support.v7.app.AppCompatActivity 
import android.support.v7.widget.Toolbar 
import android.view.View 
import android.view.Menu 
import android.view.MenuItem 
 
class MainActivity : AppCompatActivity() { 
 
 override fun onCreate(savedInstanceState: Bundle?) { 
  super.onCreate(savedInstanceState) 
  setContentView(R.layout.activity_main) 
 
 } 
} 
在转换之后,Android Studio会提示Kotlin not configured,此时虽然可以编译成功,但是kotlin是无效的,点击Configure,根据自己的需要选择需要配置的module即可
Kotlin 开发环境详解及简单实例
之后点击Sync Now进行同步
Kotlin 开发环境详解及简单实例
这样在编译后就可以看到kotlin实现的部分了。
第一行代码hello world
作为程序员的传统,当我们第一次接触某种语言时,都会先写出hello world,接下来我们便开始尝试实现这个最简单的kotlin APP。
首先,Module层的gradle中添加一行配置,然后再次通过Sync New进行同步
中添加一行配置,然后再次通过Sync New进行同步
apply plugin: 'kotlin-android-extensions' 
然后在布局文件中添加一个TextView,设置其id为textview
<TextView 
 android:id="@+id/textview" 
 android:layout_width="wrap_content" 
 android:layout_height="wrap_content" /> 
回到MainActivity中,增加对于布局文件的引用(比如此处我使用的是content_main.xml)
import kotlinx.android.synthetic.main.content_main.* 
之后会发现,在onCreate里面可以直接对id进行操作(比ButterKnife绑定还方便有木有),我们设置textview的内容为Hello world,编译
textview.text = "hello world"; 
Kotlin 开发环境详解及简单实例
兼容Java
前文说过,Kotlin和Java是能够互通的,这也给安卓开发者带来了极大的方便,我们可以直接在现有的工程中使用kotlin的代码,或者是根据它们的特性选用不同的语言,那么他们是如何互通的呢。
1)Kotlin调用Java
首先,我们创建一个名为Demo的Java类,里面只含有一个返回字符串的方法getType
package com.steveyg.hellokotlin.java; 
 
public class Demo { 
 public String getType(){ 
  return "Java"; 
 } 
 
} 
然后在MainActivity.kt中使用对这个类型的对象进行操作
var demo = Demo(); 
textview.text = demo.type; 
能够看到,kotlin能够直接使用java的内容,同时还对getset方法进行了处理,虽然在Demo对象中没有type这个属性,但是检测到了getType方法,就自动处理为type这个属性,其他的方法名(不含getset)能够正常使用不会处理。
对工程进行编译,可以看到内容如下图
Kotlin 开发环境详解及简单实例
我们看到textview的内容变成了Java.
2)Java调用kotlin
创建一个Kotlin类,命名为KotlinDemo
package com.steveyg.hellokotlin.kotlin 
 
class KotlinDemo { 
 fun getType(): String{ 
  return "Kotlin"; 
 } 
} 
再在上文的Java类(Demo.java)中增加一个方法,用于调用kotlin
public String getKotlinType(){ 
 return new KotlinDemo().getType(); 
} 
然后再在MainActivity中进行调用
textview.text = demo.kotlinType; 
再次编译,结果见下图
Kotlin 开发环境详解及简单实例
可以看到,内容变成了Kotlin,说明调用成功。
其他
相比于Java,Kotlin的语法确实简洁了不少,更像是一种脚本语言,对于那些习惯JavaScript和Python的开发者应该更容易上手。
本文中所有代码见github,想要更深的了解Kotlin,可参考Kotlin官网以及开发文档

本文代码:http://xiazai.jb51.net/201706/yuanma/helloKotlin-master(jb51.net).rar

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

以上就是本次给大家分享的关于java的全部知识点内容总结,大家还可以在下方相关文章里找到相关文章进一步学习,感谢大家的阅读和支持。

推荐内容

怎样使用JavaScript中的setUTCDate()方法

解析MySQL绿色版设置编码及1067错误

关于jQuery.Validate表单验证插件的使用教程

vue和mintui-Loadmore结合实现下拉刷新上拉加载实例效果

分享三种取消选中单选框radio的方法

展开 +

收起 -

Java 相关电子书
学习笔记
网友NO.996205

Spring Boot与Kotlin 整合全文搜索引擎Elasticsearch的示例代码

Elasticsearch 在全文搜索里面基本是无敌的,在大数据里面也很有建树,完全可以当nosql(本来也是nosql)使用。 这篇文章简单介绍Spring Boot使用Kotlin语言连接操作 Elasticsearch。但是不会做很详细的介绍,如果要深入了解Elasticsearch在Java/kotlin中的使用,请参考我之前编写的《Elasticsearch Java API 手册》 https://gitee.com/quanke/elasticsearch-java/ 里面包含使用实例,包含我们使用踩过的坑。 如果完全不了解Elasticsearch请先了解,安装好Elasticsearch服务 有多种方式连接Elasticsearch Spring Data Elasticsearch elasticsearch Java client 其他第三方库 需要注意的是,如果使用Spring Data Elasticsearch,spring boot 1.5++版本的不支持最新版本的elasticsearch。 下面是spring data elasticsearch 和elasticsearch对应的版本 spring data elasticsearch elasticsearch 3.0.0.RC2 5.5.0 3.0.0.M4 5.4.0 2.0.4.RELEASE 2.4.0 2.0.0.RELEASE 2.2.0 1.4.0.M1 1.7.3 ……

网友NO.688070

Kotlin 接口与 Java8 新特性接口详解

前言 在看一本关于高性能编程的时候发现 Java8 中关于接口的新特性的介绍,这个特性是真的棒,解决了一个接口中有多个方法,但并不想实现该接口的类都去实现所有的方法,简单的说就是在类需要的情况再去重写接口。所以有了以下的特性出现。 接口增强 在 Java8 的中接口特性中增加以下俩种特性: 在接口中可以使用 default 关键字修饰默认方法或扩展方法,抽象方法因为其特性的原因无法使用 接口可以使用 static 声明为静态方法,可以通过类直接调用Android Studio 中使用 Java8 需要在模块中的 build.gradle 中配置指定的版 Java 版本,当然使用 Kotlin 为开发语言的话需要为 Kotlin 指定 Jvm 版本,因为 Kotlin 使用的是 Jvm 1.6 那么下面就来展示他们的配置方法: android {defaultConfig {... kotlinOptions {jvmTarget = '1.8'}}compileOptions {sourceCompatibility JavaVersion.VERSION_1_8targetCompa……

网友NO.973849

Spring Boot与Kotlin处理Web表单提交的方法

我们在做web开发的时候,肯定逃不过表单提交,这篇文章通过Spring Boot使用Kotlin 语言 创建和提交一个表单。 下面我们在之前《Spring Boot 与 Kotlin使用Freemarker模板引擎渲染web视图》项目的基础上,增加处理表单提交。 build.gradle 文件没有变化,这里贴一下完整的build.gradle group 'name.quanke.kotlin'version '1.0-SNAPSHOT'buildscript { ext.kotlin_version = '1.2.10' ext.spring_boot_version = '1.5.4.RELEASE' repositories { mavenCentral() } dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath("org.springframework.boot:spring-boot-gradle-plugin:$spring_boot_version")// Kotlin整合SpringBoot的默认无参构造函数,默认把所有的类设置open类插件 classpath("org.jetbrains.kotlin:kotlin-noarg:$kotlin_version") classpath("org.jetbrains.kotlin:kotlin-allopen:$kotlin_version") }}apply plugin: 'kotlin'apply plugin: "kotlin-spring" // See https://kotlinlang.org/do……

网友NO.744171

Spring Boot 与 kotlin 使用Thymeleaf模板引擎渲染web视图的方法

本篇给大家介绍Spring Boot 与 kotlin 使用Thymeleaf模板引擎渲染web视图。 静态资源访问 在我们开发Web应用的时候,需要引用大量的js、css、图片等静态资源,使用Spring Boot 与 kotlin如何去支持这些静态资源?,很简单。 默认配置 Spring Boot默认提供静态资源目录位置需置于 classpath 下,目录名需符合如下规则: /static/public/resources/META-INF/resources 举例:我们可以在src/main/resources/目录下创建static,在该位置放置一个图片文件。启动程序后,尝试访问 http://localhost:8080/ruby.jpg 。如能显示图片,配置成功。 渲染Web页面 之前通过 @RestController 处理请求,返回的内容为json对象。如果需要渲染 html 页面,要如何实现呢? 模板引擎 在 Spring Boot 推荐的模板引擎下,我们可以很快的上手开发动态网站。 Spring Boot 提供了默认配置的模板引擎主要有以下几种: ThymeleafFreeMarkerGroo……

<
1
>

电子书 编程教程 文档 软件 源码 视频

Copyright 2018-2020 xz577.com 码农之家

本站所有电子书资源不再提供下载地址,只分享来路

免责声明:网站所有作品均由会员网上搜集共同更新,仅供读者预览及学习交流使用,下载后请24小时内删除

版权投诉 / 书籍推广 / 赞助:QQ:520161757