2
獲取類字段我有一個特點:從特質
trait A {
/*Some methods*/
}
而且我有很多的類:
class B(val argument: SomeClass) extends A {
/*Some methods*/
}
我想從特徵參數。我可以在每個類和特質創建方法getArgument:
trait A {
def getArgument: SomeClass
/*Some methods*/
}
class B(val argument: SomeClass) extends A {
def getArgument = argument
/*Some methods*/
}
或者使用反射:
trait A {
def getArgument = {
val f = this.getClass.getDeclaredField("argument")
f.setAccessible(true)
f.get(this).asInstanceOf[SomeClass]
}
/*Some methods*/
}
class B(val argument: SomeClass) extends A {
/*Some methods*/
}
有沒有更好的方式來做到這一點?