为了账号安全,请及时绑定邮箱和手机立即绑定

xutils可以使用kotlin开发吗?

/ 猿问

xutils可以使用kotlin开发吗?

幕布斯7119047 2018-11-14 23:19:15

xutils可以使用kotlin开发吗


查看完整描述

1 回答

?
慕森卡

What is Kotlin
Kotlin,原意是在俄罗斯的一个小岛,JetBrain在2011年推出了以这个来命名的一个运行在JVM上的语言, 看上去有点类似C#和Scala的结合,并且同为静态类型,作为一门JVM上的语言,可以轻松兼容Java,并且整个语言设计的非常轻量。目前的版本为0.12.200,尚未发布正式版。
Kotlin的下载和配置在其官网上有,在这里就不再赘述了,值得一提的是,作为JetBrains家出品的语言,自家的IDEA当然全力支持!
基本语法介绍
Kotlin的语法非常简洁,熟悉Java或者Scala的人都可以快速上手:
函数声明:
fun foo(va: Int): Int {
return 1
}

也可以单行声明:
fun foo(va: Int): Int = 1

lambda当然也是支持的:
var c = {foo: Int -> println(foo)}

Kotlin中的函数是一等对象,自然支持高阶函数:
var c = {foo: Int -> println(foo)}
fun fooTest(func: (Int)->()) = println("I'm Groot")
fooTest(c)

类与接口
类可以这样进行声明:
class Bar(var b: Int): Foo() {
var c = 1
init {
println("class initializer")
}

constructor(): this(1) {
println("secondary constructor")
}
}

Bar类在这里继承了Foo类,Bar类有两个构造函数,直接在Bar类头的是primary constructor,另外一个构造函数使用constructor关键字定义,注意必须要先调用primary constructor,另外,init标明的是class initializer,每个构造函数都会首先调用class initializer里面的代码,再调用构造函数

Inner class:
class Outer {
class Inner {
}
}

Kotlin同样支持嵌套的内部类,不过和Java不一样的是,Kotlin的内部类不会默认包含一个指向外部类对象的引用,也就是说,Kotlin中所有的内部类默认就是静态的,这样可以减少很多内存泄露的问题。另外,如果需要在内部类中引用外部类对象,可以在Inner类的声明前加上inner关键字,然后在Inner类中使用标记的this:this@Outer来指向外部类对象

Singleton:
object Single {
var c = 1

fun foo() = println("foo")
}

Kotlin中使用object关键字声明一个singleton对象,后面这里的方法就可以直接使用Single.foo()来调用了



查看完整回答
反对 回复 2018-12-13

添加回答

回复

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信