美文网首页
Lazy关键字

Lazy关键字

作者: lehuai | 来源:发表于2018-01-03 09:59 被阅读0次
    package day02
    
    
    /**
      * lazy关键字
    *Scala中用lazy定义的变量叫做惰性变量,会实现延迟加载
    * 惰性变量只能是不可变变量,且只有在调用惰性变量时,才会去实例化这个变量
     */
    class ScalaLazyDemo {
    
    }
    
    object ScalaLazyDemo1 {
      def init(): Unit = {
        println("call init()")
      }
      def main(args: Array[String]): Unit = {
        val property = init()  //没有用lzay修饰
        println("after init()")
        println(property)
      }
    }
    
    object ScalaLazyDemo2 {
      def init(): Unit = {
        println("call init()")
      }
    
      def main(args: Array[String]): Unit = {
        lazy val property = init()  //使用lazy修饰
        println("after init()")
        println(property)
      }
    }
    

    相关文章

      网友评论

          本文标题:Lazy关键字

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