Trovo un certo uso confuso di tratto in qualche codice unit testing, come ad esempio:Come funzionano le parentesi graffe che seguono l'istanziazione dei tratti?
trait MyTrait {
val t1 = ... //some expression
val t2 = ... //some expression
}
E poi istanziare il tratto utilizzando il nuovo e nel frattempo alcune espressioni avvolti da parentesi graffe hanno seguito la creazione di istanze.
test("it is a test") {
new MyTrait {
// do something with t1 and t2
}
}
Sono confuso da questa strana sintassi.
La mia domanda è:
perché l'uso di follow tratto di un'istanza da parentesi graffe?
qual è lo scopo dell'istanza dei tratti in questo caso e altri casi potrebbero anche essere utili?
duplicato di http://stackoverflow.com/questions/12891321/why-are-traits-instantiable, http://stackoverflow.com/questions/6155570/what-does-it-mean-to-instantiate-a-trait – sourcedelica