簡體   English   中英

如何在scala中指定Foo.class?

[英]How to specify Foo.class in scala?

我使用的Java API看起來像:

import com.google.code.morphia.Morphia;

.....

     val morphia = new Morphia();
     morphia.map(Hotel.class).map(Address.class);

但它給scala編譯器錯誤。 上面scala中的正確代碼是什么? 請注意,.map被定義為morphia API的一部分,不要與scala map混淆。

假設您的問題與.class部分有關,那么Hotel.class的Scala等價物將是classOf[Hotel] ,同樣適用於Address

希望這可以解決你的問題,雖然很難說沒有看到完整的編譯器輸出。

你應該使用classOf[Hotel]

編輯 :看了API之后; 你真正想要的是:

classOf[T]

例如。

classOf[Hotel]

有關 Scala類型系統的更多信息


錯誤的答案,但也許有用,如果有人誤導這個問題標題:

class是Scala中的保留字。 如果要將其用作字段或方法名稱,則需要使用反引號將其括起來:

Hotel.`class`

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM