Why is a Scala companion object compiled into two classes(both Java and .NET compilers)?

object ScalaTrueRing { def rule = println("To rule them all") } this piece of code will be compiled into java byte code, if I decompile it, then the equivalent Java code is similar to this: pub...