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