Folgende Scala-Mailinglisten sagen oft: "Der Compiler schreibt diesen [scala] -Code in diesen [java/scala ?? ] Code ". Zum Beispiel von einem der neuesten Threads, wenn Scala siehtWie kann ich sehen, in welchem [Java/Scala?] - Code der Scala-Compiler den ursprünglichen Scala-Code umschreibt?
class C(i: Int = 4) { ... }
dann der Compiler schreibt dies als (effektiv):
class C(i: Int) { ... }
object C {
def init$default$1: Int = 4
}
Wie kann ich herausfinden, was der Compiler ausgegeben werden für mein Code? Soll ich den resultierenden Bytecode dafür dekompilieren?
Scala-Compiler auf dem erzeugten Bytecode sieht nicht den Code in Java-Code neu schreiben, aber Scala-Code in Java-Bytecode kompiliert, die anders ist. Vielleicht können Sie diesen Bytecode (mit Jad) beispielsweise "zurückentwickeln", um einen Java-Quellcode zu erhalten. –
Ich weiß, dass Scala-Compiler [in einigen Fällen] ursprünglichen Code neu schreibt. Ich habe jetzt meine ursprüngliche Frage korrigiert. –