class - 我如何在 Scala 中引用未实例化的类?

标签 class scala types

您可以在 Scala 中执行以下操作这一事实非常巧妙:

scala> class FooBar
defined class FooBar

scala> val a = new FooBar
a: FooBar = FooBar@7efeedca

scala> val the_class = a.getClass
the_class: java.lang.Class[_ <: FooBar] = class FooBar

scala> val b = the_class.newInstance
b: FooBar = FooBar@1ef1df56

假设我想直接设置the_class 的值。我似乎能够声明正确类型的变量:

scala> var the_class: java.lang.Class[_ <: FooBar] = null
the_class: java.lang.Class[_ <: FooBar] = null

但我似乎无法将变量绑定(bind)到任何值。这可能吗?

scala> the_class = class FooBar
<console>:1: error: illegal start of simple expression
       the_class = class FooBar
                   ^
scala> the_class = FooBar
<console>:9: error: not found: value FooBar
       the_class = FooBar
                   ^

最佳答案

你的意思是:

val the_class = classOf[FooBar]

关于class - 我如何在 Scala 中引用未实例化的类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9608329/

相关文章:

Java:类和扩展类

php - 如何在不调用 session_start 的情况下获取 session

javascript - 试图从数组中检索对象的颜色

scala - 执行 scala 的运行任务时 Gradle 失败

scala - 在 Scala 中的 Future[T] 中包装阻塞 Try[T] 的最佳方法是什么?

scala - 从 Scala 中经过类型检查的具体化 `Tree` 中提取类型

java - 按类型变量创建列表

c++ - 在 C++ 中通过父类访问子类的元素?

java - 从 ListBuffer 中移除元素

java - 确保输入参数满足多个类型标准