如果我有Scala中的一个基类,如:斯卡拉继承参数列表
class Base(a: Int, b: Int, c: Int, d: Int, e: Int, f: Int = 1, g: Int = 2) {}
我想多类从这个基类继承,但我想添加参数到该列表。有没有一种有效的方法来做到这一点,而无需携带基类的大量参数列表?
为了使事情更加复杂,基类可能会或可能不会重新定义可选参数(f和g)。可以想像:
class Child1(f: Int, h: Int, i: Int) extends Base(a,b,c,d,e,f)
而且这当然会是这样的
new Child1(a=1, b=2, c=3, d=4, e=5, f=6, g=7, h=8, i=9)
是否有斯卡拉做到这一点的好办法? (我想过通过定义参数的每个构造函数传递映射,但是没有编译时检查是否存在必需的参数,并且它依赖于开发人员检查文档以查看它们应包含的内容。如果键被拼写错误怎么办?等等...)