Computers and JAVA Programs
A programmer creates a (human interpretable) program with an editor the program is stored as a file in secondary memory.
A compiler translates the program into (machine interpretable) bytecode file.
A class loader puts the bytecodes in primary memory.
A bytecode verifier confirms validity and security of the bytecodes in memory.
An interpreter reads the bytecodes, translates them into machine specific instructions and executes the program.