Skip to content

Instantly share code, notes, and snippets.

@tpolecat
Created June 5, 2013 23:16
Show Gist options
  • Save tpolecat/5718065 to your computer and use it in GitHub Desktop.
Save tpolecat/5718065 to your computer and use it in GitHub Desktop.
cookie:c rnorris$ cat > foo.scala
class Foo(bar: Object) {
val milk = bar
def water = milk
def braun = bar
}
cookie:c rnorris$ scalac foo.scala
cookie:c rnorris$ javap -c -classpath . Foo
Compiled from "foo.scala"
public class Foo extends java.lang.Object{
public java.lang.Object milk();
Code:
0: aload_0
1: getfield #14; //Field milk:Ljava/lang/Object;
4: areturn
public java.lang.Object water();
Code:
0: aload_0
1: invokevirtual #19; //Method milk:()Ljava/lang/Object;
4: areturn
public java.lang.Object braun();
Code:
0: aload_0
1: getfield #22; //Field bar:Ljava/lang/Object;
4: areturn
public Foo(java.lang.Object);
Code:
0: aload_0
1: aload_1
2: putfield #22; //Field bar:Ljava/lang/Object;
5: aload_0
6: invokespecial #27; //Method java/lang/Object."<init>":()V
9: aload_0
10: aload_1
11: putfield #14; //Field milk:Ljava/lang/Object;
14: return
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment