Layers of Logic

Phase I

The Machine

What Java is, and what is actually running your code.

2 sections34 min of reading9 exercises

Learn the portability problem Java was designed to solve. Then compile and run one program from the terminal, following it from source code through bytecode, class loading, and the local JVM.

When you finish this phase you can

  • Explain why a native binary targets both a processor architecture and an operating system
  • Distinguish portable source code, portable bytecode, and platform-specific native code
  • Follow a Java file from .java to .class to a running program
  • Distinguish the JVM execution engine, a runtime environment, and the JDK tools
  • Write, compile and run a Java program from the command line
  • Identify whether a failure happened during compilation, class lookup, entry-point lookup, or execution
  1. 1.1Why Java ExistsStart with the portability problem Java was designed to solve, then trace source code to the processor.Write once, run anywhereCore16 min4 exercises
  2. 1.2JVM, JRE, JDK, and Your First ProgramBuild and run one Java file from the terminal, then follow it through the runtime.BytecodeJVMCore18 min5 exercises