ここでのデフォルト値は、valに明示的に割り当てられた場合と、直接印刷された場合とで動作が異なるのはなぜですか?
package blevins.example
class SimpleWrap[T] {
var t: T = _
def get = t
}
object App extends Application {
val swb = new SimpleWrap[Boolean]
val b = swb.get
println("b: " + b) // b: false
println("swb.get: " + swb.get) // swb.get: null
val swi = new SimpleWrap[Int]
val i = swi.get
println("i: " + i) // i: 0
println("swi.get: " + swi.get) // swi.get: null
}
私は2.8r19890を使用しています。
編集-「get」がAnyを期待して呼び出されたときに奇妙なことが起こるようです。
val any1: Any = swb.get
val any2: Any = b
println("any1: " + any1) // any1: null
println("any2: " + any2) // any2: false