美文网首页
Kotlin的基础特性

Kotlin的基础特性

作者: 我要这八块腹肌有何用 | 来源:发表于2019-06-09 03:23 被阅读0次

    1.基础语法


    函数声明

    • 声明函数要用 fun 关键字,就像声明类要用 class关键字一样

    • 函数参数参数类型是在参数名的右边

    • 函数的返回值函数参数右边使用:分割,没有返回值时可以省略

    声明没有返回值的函数

    fun main() {
      printLn(hello world)
    }
    

    声明有返回值的参数

    fun doubleX(x: Int): Int {
        return x * 2
    }
    

     

    变量声明

    • 声明变量需要通过关键字, var 声明可读可写变量,
      val 声明只读变量
    • 类型变量名的右边,用:分割,同时如果满足类型判断,类型可以省略
    • 创建对象直接调用构造器,不需要 new 关键字

    声明可读可写变量

    var age: Int = 18
    

    声明只读变量

    val name: String = "Jarvis"
    

    创建对象

    val kotlin: Kotlin = Kotlin()
    

     

    类型判断

    如果表达是右边的类型是可以推断出来的,那么类型可以省略

    var age = 18
    val name = "Jarvis"
    val kotlin = Kotlin()
    

     

    继承类/实现接口

    继承类和实现接口都是用的 : ,如果类中没有构造器,需要在类后面加上 ()

    class MainActivity : BaseActivity(), View.OnClickListener
    

     

    空安全设计

    kotlin中的类型分为可空类型不可空类型

    • 不可空类型 EditText
    • 可空类型 EditText?
       

    调用符

    • !!强行调用符
    • ?.安全调用符
       

    类型判断

    • is 判断属于某类型
    • !is 判断不属于某类型
    • as 类型墙砖,失败哦爆出类型强转失败异常
    • as? 类型前传,失败返回 null
       

    静态函数和属性

    • 顶层函数
    • object
    • companion object
      其中,顶层函数直接在文件中定义函数和属性,会直接生成静态代码。在java中通过文件名Kt来访问,同事可以通过 @file:JvmName 注解来修改这个类名
      objectcompanion object 都是生成单例对象,然后通过单例对象访问函数和属性的
       
    JvmStatic

    通过这个注解将 objectcomnpanion object 的内部函数和属性,真正生成静态代码
     

    2.Kotlin标准函数


    使用是可以通过简单的规则作出一些判断

    • 返回自身
      applyalso 中选
      1.作用域中使用this作为参数选择apply
      2.作用域中使用it作为参数选择also
    • 不需要返回自身
      runlet 中选
      1.作用域中使用this作为参数选择run
      2.作用域中使用it作为参数选择let

    apply适合对一个对象做附加操作的时候
    let适合空判断的时候
    with适合对同一个对象进行对此操作的时候

    3.Kotlin扩展函数(extension function)


    扩展函数可以为任何类添加上一个函数,从而代替工具类
    扩展函数和成员函数相同时,成员函数优先被调用
    拓展韩束是静态解析的,在编译时就确定了调用函数(没有多态)

    相关文章

      网友评论

          本文标题:Kotlin的基础特性

          本文链接:https://www.haomeiwen.com/subject/ynmwxctx.html