В Scala мы можем написать
object Foo { def bar = {} }
Как это реализуется компилятором? Я могу вызвать Foo.bar ();
из Java
, но new Foo ();
из Java выдает ошибку не удается найти символ символа: конструктор Foo ()
Примечание: вот код, выводимый scalac -print
package <empty> {
final class Foo extends java.lang.Object with ScalaObject {
def bar(): Unit = ();
def this(): object Foo = {
Foo.super.this();
()
}
}
}