‹‹ All zyBooks

Programming in Java


Roman Lysecky

Professor of Electrical and Computer Engineering / Univ. of Arizona

Adrian Lizarraga

ECE Ph.D., Univ. of Arizona / zyBooks


  • Introduction to Java
  • Variables / Assignments
  • Branches
  • Loops
  • Arrays
  • User-defined Methods
  • Objects and Classes
  • Memory Management
  • Input / Output
  • Inheritance
  • Abstract Class and Interfaces
  • Recursion
  • Exceptions
  • Generics
  • Collections
  • GUI
  • JavaFX

Complete Table of Contents

Available with zyLabs


  • ~600 participation activities: Questions, animations, tools
  • 120+ auto-graded programming challenge activities using built-in programming environment
  • Configurable sections support early/late introduction to methods and objects
  • Additional material includes command-line arguments and engineering examples

A web-based programming in Java practice environment is provided to compile and execute code in one place, while “tinker” tools – which include responsive compiler messages – allow students to develop an intuition and skill for coding.

The zyBooks Approach

Provides interactive learning of programming in Java foundations. Emphasizes a solid understanding of memory. From the moment variables are introduced, the material shows via animations how variables exist and are updated in memory. The continued showing of memory helps clarify challenging topics like pass-by-copy/reference parameters, object creation, garbage collection, and more. Furthermore, the material includes emphasis on disciplined program development, including incremental development, modular development, and testing/debugging.

The Programming in Java zyBook can also be mix-and-matched with others, such as with Data Structures Essentials (a popular combination).