我正在使用 Intellij
开发 Scala
程序。当点击run
时,它会显示两个应用程序:HelloWorld
和HelloWorld$
:
这两个应用程序有什么区别?
最佳答案
对于jvm
HelloWorld$
是单例类HelloWorld
。
Scala 为每个对象 ObjectName
生成 ObjectName$
类。
它还在此类中创建如下所示的静态方法:
public static void main(String[] args) {
MODULE$.main(args);
}
在 java
中,您可以使用 ObjectName$.MODULE$
静态字段获取对象 ObjectName
的实例,或者调用静态代理方法对象名称$
。
关于scala - Intellij 中的 "app"和 "app$"有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30524134/