Skip to main content

Language Execution Models

The program development and execution model explains how a program is written, converted, and executed on a system. In traditional languages like C, the source code is compiled directly into machine code, which is platform-dependent and can run only on the operating system it was compiled for. In contrast, Java follows a different approach. The source code is first compiled into bytecode, which is platform-independent. This bytecode is then executed by the Java Virtual Machine (JVM), which converts it into native machine code specific to the operating system.

This is why Java follows the principle: β€œWrite Once, Run Anywhere.”

C Language development and execution model.​

Java Language development and execution model.​

Execution Model Summary​

C programs are platform-dependent because they compile directly into machine code for a specific operating system.

Java programs are platform-independent because bytecode runs on the JVM, enabling execution across multiple operating systems.