我正在嘗試將一些Scala代碼注入到我現有的Java應用程序中。 (所以,據說,我想要更多樂趣)。如何從Java調用Scala單例方法?
創建斯卡拉
ScalaPower.scala
package org.fun
class ScalaPower
object ScalaPower{
def showMyPower(time:Int) = {
(0 to time-1).mkString(", ")
}
}
一個單獨的東西現在,裏面OldJava.java
class OldJava {
public void demo(){
System.out.println(?)
}
}
我應該怎麼填寫?
,使Java將調用showMyPower方法? 我試過org.fun.ScalaPower.showMyPower(10)
和org.fun.ScalaPower.getInstance().showMyPower(10)
,但都沒有工作。
(使用反編譯亞德類文件告訴我什麼,但廢話代碼。)
編輯 我刪除class ScalaPower
聲明和Scala產生的靜態方法如預期。 (致電org.fun.ScalaPower.showMyPower(10)
只是工作)。
不知道是否是在Scala編譯器錯誤或不
什麼'org.fun.ScalaPower.showMyPower(10)'? – OscarRyz 2010-07-19 16:55:01
哎喲,我的壞。忘了更改名稱空間。已經更新了這個問題。謝謝。 – 2010-07-20 06:34:50
順便說一下,你可以寫'0直到時間'而不是'0到時間1'。 – 2011-02-10 08:27:37