假設MyClass
是一個在Java中定義的類,並且有許多靜態成員和非靜態成員。我試圖別名Scala的對象MyObject
這個類(以及相關的配套對象)如下圖所示:靜態類型別名Java類
object MyObject {
import javastuff._
type MyAlias = MyClass
val MyAlias = MyClass
}
Scalac抱怨:
error: object MyClass is not a value
val MyAlias = MyClass
如何解決此問題?謝謝。
你究竟想要使用`val MyAlias`呢?類型別名是用`type`關鍵字完成的,你已經完成了。 `val MyAlias`是一個值聲明,MyClass是一個類型名稱而不是一個值,所以你不能將MyClass賦給`val MyAlias`。請給我們幾個用例。 – 2011-02-09 10:25:35
@Wong,由於Java靜態方法的調用是通過JavaClass.staticMethod來完成的,就好像JavaClass是一個Scala對象一樣,@Siddharth想要一種方法來以類似於它可以實現的方式「替代」類方法的表示斯卡拉關於斯卡拉的「對象」,例如`val obj = scalaObject`。 – pedrofurla 2011-02-09 11:26:30