![]() |
1
4
假设您希望最小化子类中的仪式数量,下面是我的建议:
通过扩展java.lang.cloneable并调用object.clone方法,可以确保运行时类型与要克隆的对象相同。静态类型是通过类型转换(asInstanceOf[t])强制的。您将需要重写每个子类中的myclone方法并指定类型,但它应该是一个单行程序。 |
![]() |
2
5
正如您所建议的,抽象类型或泛型参数是您所需要的。您是否要求mydatastructure不是特征类或抽象类?下面将mydatastructure定义为抽象类,但也可以将其作为特征。
scala解释器的结果表明,mydatastructureextended中定义的myclone方法是正确的类型。
您可能希望限制t,使其类型只能是mydatastructure子类的类型。
我不知道您的要求,但我相信scala 2.8将具有一些很好的功能,可以使用case类和命名参数来使用copy方法克隆case类。 |
![]() |
3
0
很难说你是不是用这样一个模糊不清的问题描述做得对,但实际上做起来相当简单。您可以简单地覆盖
描述不清楚的示例代码:
以及相应的repl会话:
|
![]() |
4
0
我认为这可能是解决办法。这不是继承的,你可以做一些修改来实现你的目标。祝你好运。
|
![]() |
davidzxc574 · 将字符串缩放为字符 2 年前 |
![]() |
yic_l · 什么是“!”在这个函数中是什么意思? 2 年前 |
![]() |
Jelly · Scala:用于理解递归未来 2 年前 |
![]() |
bbgghh · 在scala中连接两个列表时如何处理不匹配的键 2 年前 |
![]() |
Iheb Mar · 卡夫卡制作人/消费者粉碎每一秒的API调用 2 年前 |
![]() |
B. Bal · 在Scala中重用类成员 2 年前 |