问题标签 [scala-java-interop]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
1885 浏览

java - Visibility of properties in scala class

I defined a property in the constructor of my class the following way:

When I try access to message value from Java code y get a visbility error. Why?

0 投票
3 回答
2222 浏览

java - Scala 闭包和 Java 8 闭包之间的兼容性

在阅读了一些 OpenJDK 邮件列表条目之后,似乎 Oracle 开发人员目前正在进一步从闭包提案中删除一些内容,因为 Java 语言中早期的设计错误使 Java 闭包的引入变得复杂。

考虑到 Scala 闭包比 Java 8 计划的闭包功能强大得多,我想知道是否可以调用 Java 方法,从 Scala 获取闭包,在 Java 中定义闭包并将其提供给 Scala 函数等?

那么 Java 闭包会像 Scala 对应的字节码一样表示还是以不同的方式表示?是否有可能缩小 Java/Scala 闭包之间的功能差距?

0 投票
5 回答
16073 浏览

java - 如何从 Java 调用 Scala 单例方法?

我正在尝试将一些 Scala 代码注入到我现有的 Java 应用程序中。(所以,有人说,我想要更多的乐趣)。

我在 Scala 中创建了一个单例的东西

现在,在 OldJava.java 中

我应该填写什么?以便 Java 调用 showMyPower 方法?我都试过了 org.fun.ScalaPower.showMyPower(10)org.fun.ScalaPower.getInstance().showMyPower(10)但都没有。

(使用 Jad 反编译类文件只显示无意义的代码。)

编辑 我删除了class ScalaPower声明,scala按预期生成了静态方法。(调用org.fun.ScalaPower.showMyPower(10)只是有效)。

想知道这是否是 scala 编译器中的错误

0 投票
2 回答
4086 浏览

java - 在 Java 中使用 Scala 常量

我目前正在为未来的项目评估 Scala,并遇到了一些奇怪的事情。我在 JSP 中为我们创建了以下常量:

它没有用。经过一些试验,我决定反编译以深入了解它:

现在这很有趣!就个人而言,我一直想知道为什么检查员需要前缀get和 mutator需要在 Java 中设置的前缀,因为它们存在于不同的名称空间中。

然而,向团队的其他成员解释这一点可能仍然很尴尬。那么是否有可能在没有检查员的情况下拥有一个公共常量?

0 投票
5 回答
3736 浏览

java - 将 Java 迁移到 Scala

在将现有的 Java 代码库逐步迁移到 Scala 时,需要注意哪些最重要的点以及解决方法?使用两种语言的(可能很长)中间阶段。

我正在考虑的事情是:

  • 不同的集合层次结构
  • Scala 不能很好处理的 Java 结构
  • 在 Java 中使用不切实际的 Scala 结构
  • 构建工具
  • 编译顺序
  • 框架中的不变性支持
  • 等等
0 投票
5 回答
8627 浏览

scala - Scala 额外的无参数构造函数和默认构造函数参数

我在构造函数上使用 Scala 2.8 默认参数,出于 Java 兼容性的原因,我想要一个使用默认参数的无参数构造函数。

出于非常明智的原因,这不起作用:

我想知道我是否缺少任何东西。任何不需要复制参数默认值的想法?

谢谢!

0 投票
1 回答
7718 浏览

scala - 从 Scala 调用受保护的静态 Java 方法

我在这里有一个包含一些 Java 类的库。一个类有一些protected static方法,我意识到这是一个 OOP 禁止但我不能更改它的代码。假设我有一个继承上述 Java 类的 Scala 类,我该如何调用它的受保护静态成员?

0 投票
1 回答
1196 浏览

java - Scala 自动装箱和 Java Map

我有一个 Java 方法需要一个类型的参数Map<Long, Foo>。我正在尝试在 Scala 2.8.1 中为该方法编写一个单元测试并传入一个文字Map[Long, Foo].

我的代码如下所示:

编译器给我以下错误:

我也试过了

并得到错误:

我该怎么做呢?

0 投票
2 回答
568 浏览

java - .java 和 .scala 类之间是否可能存在循环依赖关系?

假设我在 .java 文件中定义了 A 类,在 .scala 文件中定义了 B 类。
A类使用B类,B类使用A类。
如果我使用java编译器,我会出现编译错误,因为B类尚未编译。如果我使用 scala 编译器类 A 将找不到。有没有可以同时编译的编译器?

0 投票
5 回答
14125 浏览

api - 请解释使用 Option 的 orNull 方法

Scala 的 Option 类有一个orNull方法,其签名如下所示。

我对隐含的事情感到困惑。有人可以解释一下它是如何使用的,最好举个例子吗?