我可以将未存储在类本身中的参数传递给 Scala 类构造函数吗?我想实现在Java中可以编写如下的功能:
class A {
private final SomethingElse y;
public A(Something x) {
y = x.derive(this);
}
}
即类构造函数采用参数,该参数稍后使用对 的引用转换为另一个值this。构造函数返回后参数被遗忘。
在 Scala 中,我可以这样做:
class A(x: Something) {
val y = x.derive(this)
}
但这意味着它x存储在我想避免的类中。由于x.derive方法使用对 的引用this,我无法在伴生对象中进行转换。