Edo*_*chi 5 java getter setter scala
在Scala中,我们可以使用无参数方法,这对于DSL目的非常有用; 它们还用于为类字段自动定义getter.
我正在开发一个Java库,我想尽可能地与Scala无缝集成.我想知道是否有办法用空参数列表注释Java方法,以便Scala将其识别为无参数.
例如
class Foo {
@ParameterLess
public String[] bar() { return someArray; }
}
Run Code Online (Sandbox Code Playgroud)
所以在Scala我能做到:
val f = new Foo
f bar (0)
Run Code Online (Sandbox Code Playgroud)
没有编译器抱怨bar()有一个空参数列表?
或者,有没有办法从Java定义Scala风格的getter和setter?
注意:当然我知道在这个特定的例子中我可以通过定义解决问题
public String bar(int i) { return someArray[i]; }
Run Code Online (Sandbox Code Playgroud)
这可能回答了我的问题:
\n\nJava 类中的 Scala getter 和 setter
\n\n答案是你不能,除非你诉诸一些涉及特质的技巧。好吧,我想某种注释 \xc3\xa0 la@scala.reflect.BeanProperty将是一个有用的改进。
| 归档时间: |
|
| 查看次数: |
502 次 |
| 最近记录: |