Kotlin总结2

作者: 世外大帝 | 来源:发表于2017-09-20 11:57 被阅读36次

已有项目添加maven支持

这个其实怪我眼瞎,没看到

右击module -> Add Framwork Support... ->选中maven确定即可

java静态方法和kotlin伴生对象

java直接转过来的静态方法报错,发现他多了一个override,但是贸然删了又觉得不妥,就查查静态方法的资料

  • kotlin的伴生对象,可以理解为静态方法。
  • 但又不完全是,因为伴生对象毕竟也还是对
  • 转成java方法之后,一般对象被理解为class,需要用名称调用方法名,而伴生对象恰如静态方法一样,可以直接调用

java

    public static DataResult initResult(){

        return new DataResult(0,"success!");
    }

kotlin

    //自动转会转成这个样子
    companion object {

        override fun initResult(): DataResult {

            return DataResult(0, "success!")
        }
    }
    //真的只要删掉override就行了
        companion object {

         fun initResult(): DataResult {

            return DataResult(0, "success!")
        }
    }

java中的静态方法,在kotlin中其实就是伴生对象

lazy和lateinit的区别

lateinit var testLateinit:String
val testLazy: String by lazy { "test" }
  • lazy

    • 只能在val变量使用
  • lateinit

    • 只能在var类型使用
    • 只能用在不为空属性上
    • 不能用在基础数据类型上
  • 其他参见var与val的区别

相关文章

网友评论

    本文标题:Kotlin总结2

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