我正在使用Intellij
开发Scala
计划。点击run
后,它会显示两个应用:HelloWorld
和HelloWorld$
:
两个申请有什么区别?
答案 0 :(得分:4)
jvm
HelloWorld$
是单身HelloWorld
的类。
Scala为每个对象ObjectName$
生成ObjectName
类。
它还会在此类中创建如下所示的静态方法:
public static void main(String[] args) {
MODULE$.main(args);
}
从java
您可以使用ObjectName
静态字段获取对象ObjectName$.MODULE$
的实例,或者在ObjectName$
上调用静态代理方法。