我在 Scala 中遇到了一些设计问题,这些问题与辅助构造函数必须立即调用主构造函数(或其他辅助构造函数)有关
我认为下面的例子演示了这个概念
class Matrix(args: AbstractRowColumn*) { ... }
class Column(elem: Double*) extends AbstractRowColumn { ... }
class Row(elem: Double*) extends AbstractRowColumn { ... }
在这里,我认为矩阵应该由行或列构成。但是,这会导致问题,因为每个都需要一组不同的逻辑,首先必须在调用构造函数之前完成这些逻辑。(在创建最终矩阵之前,ei Column 的元素处理顺序必须与 Row 不同)
我该如何解决这个问题?更好的设计?