全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

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

Hello Kotlin

在前段时间举办的Google I/O 2017上,Google宣布Kotlin成为Android官方的开发语言,这个最初发布于2011年的语言在短短的时间内就吸引了大量的开发者,而Google使得它进入了更多人的视线。
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

项目的创建与配置 创建项目和创建普通的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即可 之后点击Sync Now进行同步
这样在编译后就可以看到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"; 
兼容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)能够正常使用不会处理。
对工程进行编译,可以看到内容如下图
我们看到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,说明调用成功。 其他
相比于Java,Kotlin的语法确实简洁了不少,更像是一种脚本语言,对于那些习惯JavaScript和Python的开发者应该更容易上手。 本文中所有代码见github,想要更深的了解Kotlin,可参考Kotlin官网以及开发文档

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

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


# Kotlin  # 开发环境详解及简单实例  # 开发环境配置  # Android Kotlin的使用及简单实例  # kotlin 官方学习教程之基础语法详解  # Android Kotlin开发实例(Hello World!)及语法详解  # 五分钟教你Android-Kotlin项目编写  # Kotlin开发Android应用实例详解  # 使用Kotlin开发Android应用的初体验  # 使用Kotlin开发Android应用教程  # 如何利用Kotlin实现极简回调  # 是一种  # 可以看到  # 创建一个  # 我们可以  # 可以使用  # 其主要  # 命名为  # 官网  # 进行了  # 自己的  # 的是  # 都是  # 变成了  # 也有  # 你可以  # 又是  # 就能  # 这意味着  # 就有  # 成百上千 


相关文章: 宠物网站制作html代码,有没有专门介绍宠物如何养的网站啊?  南宁网站建设制作定制,南宁网站建设可以定制吗?  胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?  无锡营销型网站制作公司,无锡网选车牌流程?  广州商城建站系统开发成本与周期如何控制?  如何用虚拟主机快速搭建网站?详细步骤解析  已有域名和空间如何搭建网站?  中山网站制作网页,中山新生登记系统登记流程?  网站规划与制作是什么,电子商务网站系统规划的内容及步骤是什么?  c++怎么使用类型萃取type_traits_c++ 模板元编程类型判断【方法】  如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?  h5网站制作工具有哪些,h5页面制作工具有哪些?  如何选购建站域名与空间?自助平台全解析  建站之星安装步骤有哪些常见问题?  实现虚拟支付需哪些建站技术支撑?  ,怎么在广州志愿者网站注册?  交易网站制作流程,我想开通一个网站,注册一个交易网址,需要那些手续?  如何通过NAT技术实现内网高效建站?  ,石家庄四十八中学官网?  制作网站的软件免费下载,免费制作app哪个平台好?  如何快速生成高效建站系统源代码?  Dapper的Execute方法的返回值是什么意思 Dapper Execute返回值详解  网站建设设计制作营销公司南阳,如何策划设计和建设网站?  建站之星后台密码如何安全设置与找回?  建站主机选哪种环境更利于SEO优化?  如何通过二级域名建站提升品牌影响力?  C++如何将C风格字符串(char*)转换为std::string?(代码示例)  MySQL查询结果复制到新表的方法(更新、插入)  正规网站制作公司有哪些,目前国内哪家网页网站制作设计公司比较专业靠谱?口碑好?  制作网站哪家好,cc、.co、.cm哪个域名更适合做网站?  详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)  专业商城网站制作公司有哪些,pi商城官网是哪个?  网站专业制作公司,网站编辑是做什么的?好做吗?工作前景如何?  已有域名如何免费搭建网站?  如何通过多用户协作模板快速搭建高效企业网站?  如何用免费手机建站系统零基础打造专业网站?  深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?  建站与域名管理如何高效结合?  一键网站制作软件,义乌购一件代发流程?  小型网站建站如何选择虚拟主机?  如何通过.red域名打造高辨识度品牌网站?  如何快速登录WAP自助建站平台?  如何挑选优质建站一级代理提升网站排名?  如何获取PHP WAP自助建站系统源码?  制作网站的模板软件,网站怎么建设?  如何获取上海专业网站定制建站电话?  建站主机CVM配置优化、SEO策略与性能提升指南  建站之星官网登录失败?如何快速解决?  设计网站制作公司有哪些,制作网页教程?  建站ABC备案流程中有哪些关键注意事项? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。