如何从 Java 调用具体的 Scala 特征方法?

2024-01-26

我有一个 Java/Scala 混合 Maven 项目。我需要重用 Saddle 方法make具体定义为称为特征的一部分Index。方法已定义here https://github.com/saddle/saddle/blob/master/saddle-core/src/main/scala/org/saddle/Index.scala#L588如果这有任何帮助的话。我尝试使用 java 调用该方法Index.make or Index$class.make但在这两种情况下我都得到了error: cannot find symbol编译错误。

有没有办法从 Java 调用具体的 Trait 方法?


A trait从某种意义上说,它与 Java 接口类似,它不是具体的构造函数。

来自斯卡拉:

class IndexImpl extends Index[SomeParamtersHere] {}
val x = new ClassImpl
x.make(..)

或者使用一个对象:

object Index extends Index {}
Index.make(..)

来自爪哇:

具有具体实现的特征将编译为适当的abstract class。如果某些成员没有具体落实,你就得落实。

import org.saddle.Index
public class TraitImpl extends Index$class {
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从 Java 调用具体的 Scala 特征方法? 的相关文章

随机推荐