我碰到了Scala的一些設計問題,涉及到有立即撥打了主(或其他輔助)構造在斯卡拉
我覺得下面的例子演示了概念
class Matrix(args: AbstractRowColumn*) { ... }
class Column(elem: Double*) extends AbstractRowColumn { ... }
class Row(elem: Double*) extends AbstractRowColumn { ... }
這裏輔助構造,我認爲矩陣應該由行或列構建。但是,這會導致問題,因爲每個都需要一組不同的邏輯,這些邏輯必須在調用構造函數之前首先完成。 (例如,在創建最終矩陣之前,列必須具有以不同於Row的順序處理的元素)
如何解決此問題?更好的設計?
如果你的目的是使矩陣構造函數傳遞唯一的行或列只是,它不應該接受'AbstractRowColumn *'因爲這可能是一個混合物。 (到目前爲止的答案都是針對這個問題的。) –