使一个惰性字段得到评估

时间:2013-06-18 17:25:59

标签: scala

这是Scala代码:

  class FullDescription(val description: String) 
  class Logger {
      val description = //?????

      def onAttach(description: String) = 
       description = new FullDescription(description)

      // val lazy description = onAttach(???) -- 

      // ops! we don't know its actual argument, 
      // besides we should be able to make 
      // val description be evaluated from onAttach(...) and not vise versa
    }

对于任何类Logger,都可以保证方法onAttach只会被调用一次。但是,何时调用方法onAttach是未知的。

是否可以保持val description 不可变,我该怎么做? lazy评估或其他什么?

0 个答案:

没有答案