Kotlin总结2

已有项目添加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的区别

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容