scala - Intellij 中的 "app"和 "app$"有什么区别?

标签 scala intellij-idea

我正在使用 Intellij 开发 Scala 程序。当点击run时,它会显示两个应用程序:HelloWorldHelloWorld$:
enter image description here

这两个应用程序有什么区别?

最佳答案

对于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/

相关文章:

android - 如何将 Scala 集成到核心 Android 平台中?

java - 使用 Intellij Community Edition,出现编译错误 "java: package javax.servlet.http does not exist"

intellij-idea - IntelliJ IDEA : how to revoke reformat code/optimize imports dialog?

intellij-idea - 在 Intellij IDEA 中使用 TestNG 运行单个测试

scala - cons 是方法还是类?

generics - 使用泛型将 java 接口(interface)移植到 scala trait

postgresql - 使用 PostgreSQL Play Framework scala 出现异常

maven - IntelliJ 使用哪个版本的 Maven,我如何找出

intellij-idea - 找不到system.out.println()

scala - 我如何在 Spark/Scala 中使用 countDistinct?