gpt4 book ai didi

java - 您可以在 Java 中声明无参数方法以在 Scala 中使用吗?

转载 作者:搜寻专家 更新时间:2023-11-01 00:51:50 25 4
gpt4 key购买 nike

在 Scala 中,我们可以使用无参数方法,这对于 DSL 用途非常有用;它们还用于为类字段自动定义 getter。

我正在开发一个 Java 库,我希望尽可能与 Scala 无缝集成。我想知道是否有一种方法可以使用空参数列表注释 Java 方法,以便 Scala 将其识别为无参数。

例如

class Foo {
@ParameterLess
public String[] bar() { return someArray; }
}

所以在 Scala 中我可以做:

val f = new Foo
f bar (0)

没有编译器提示 bar() 有一个空参数列表?

或者,是否有一种方法可以从 Java 中定义 Scala 风格的 getter 和 setter?

注意:我当然知道在这个特定的例子中我可以通过定义来解决这个问题

public String bar(int i) { return someArray[i]; }

最佳答案

这可能回答了我的问题:

Scala getters and setters in Java class

答案是你不能,除非你诉诸一些涉及特征的诡计。好吧,我猜像 @scala.reflect.BeanProperty 这样的某种注释会是一个有用的改进。

关于java - 您可以在 Java 中声明无参数方法以在 Scala 中使用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11952744/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com