在斯卡拉,我需要執行的代碼滿足以下要求:如何在方法中表示類型參數範圍?
將java.lang.Class
傳遞給工廠方法。傳遞給此方法的類必須擴展抽象類Project
。我將實例化這個類,執行各種操作並將其返回。
這裏就是我有...
object ProjectFactory {
def create (clazz: java.lang.Class[T <: Project]): Project = {
val newProject = clazz.newInstance
/* snip */
newProject
}
}
abstract class Project
...這裏是我得到的錯誤:
identifier expected but <: found
我知道這只是一個語法的問題 - 如何表達這個邏輯?