2016-11-11 8 views
1

Так что берите эту чертуторт модели с членами VAL, которые зависят от абстрактных членов

trait SomeTrait{ 
    val x:Int 
    val y:Int 
    val z=x*y 
} 

а затем эта реализация

class SomeImpl extends SomeTrait{ 
    val x=5 
    val y=2 
    println(z) //prints 0 why? 
} 

Почему печать 0? и как я могу избежать этого! Я хочу, чтобы z был val, на случай, если это какое-то дорогое вычисление.

ответ