[英]How to access scala object inside scala class in java?
我有 Scala 類,如:
class A {
object B {
def c(d: Int) = d + 4
}
}
我如何從java代碼訪問函數c
?
編輯:假設我無論如何都無法更改 Scala 類。
編輯#2:這是一個例子
public class Q {
public void qwe() {
A a = new A();
a.B().c(4); //Cannot resolve method 'B' in 'A'
}
}
類中的object B
被轉換為公共方法B()
,您可以按如下方式訪問它:
A a = new A();
System.out.println(a.B().c(4));
斯卡拉
class A {
object B {
def c(d: Int) = d + 4
}
}
上面的類編譯為 java 時如下所示
scalac A.scala
javap -p A.class
public class A {
private volatile A$B$ B$module;
public A$B$ B();
private final void B$lzycompute$1();
public A();
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.