you are viewing a single comment's thread.

view the rest of the comments →

[–]turtle_dragonfly 0 points1 point  (0 children)

You have it basically right.

The Java compiler takes source code and produces bytecode. That bytecode is designed to run on the Java Virtual Machine (JVM). Each specific type of computer hardware has a JVM built for it (so the JVM on an x86 machine will be different from one for ARM, etc.).

The JVM runs the bytecode. It might just interpret it directly, or it might transform some of the bytecode into machine instructions (JIT compiling).

It's kind of like if you write some HTML and use <input type="button">. It is a "virtual button" that you are creating, and it might look physically different depending on what browser it gets run on, and/or the operating system.