Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.


Learn Java

via Codecademy


Learn the basics of the popular Java language in this introductory course. ☕️

### Why Learn Java?

Java is among the most popular programming languages out there, mainly because of how versatile and compatible it is. Java can be used for a large number of things, including software development, mobile applications, and large systems development. As of 2019, 88% market share of all smartphones run on Android, the mobile operating system written in Java. Knowing Java opens a great deal of doors for you as a developer.

### Take-Away Skills

In this course you'll be exposed to fundamental programming concepts, including object-oriented programming (OOP) using Java. You'll build 7 Java projects—like a basic calculator—to help you practice along the way.

### Recently Updated

We've recently updated this course! For more information on why we did this update and how it might affect you, check out this blog post: [Learn Java Updates](


  • Hello World: Welcome to the world of Java programming! Java is a popular object-oriented programming language that is used in many different industries.
    • Hello World
    • Java Program Structure
    • Hello World
    • Planting a Tree
    • What Is an IDE?

  • Variables: Learn about datatypes in Java and how we use them. Then, practice your skills with two projects where you create and manipulate variables.
    • Learn Java: Variables
    • Java Variables Quiz
    • Java Variables: Mad Libs
    • Learn Java: Manipulating Variables
    • Java Variable Manipulation Quiz
    • Math Magic

  • Object-Oriented Java: Learn about object-oriented programming in Java. Explore syntax for defining classes and creating instances.
    • Classes and Objects
    • Java: Introduction to Classes
    • Intro to Java Classes
    • Learn Java: Methods
    • Java Methods Quiz
    • A Basic Calculator
    • Build A Droid

  • Conditionals and Control Flow: Conditionals and control flow in Java programs.
    • Conditionals and Control Flow
    • Conditional Operators
    • Conditionals and Control Flow
    • A Simple Car Loan Payment Calculator
    • Continents and Cities

  • Arrays and ArrayLists: Build lists of data with Java arrays and ArrayLists.
    • Learn Java: Arrays
    • Java Arrays Quiz
    • Learn Java: ArrayLists
    • Java ArrayList Quiz
    • Desert Island Playlist

  • Loops: Use loops to iterate through lists and repeat code.
    • Learn Java: Loops
    • Learn Java: Loops Quiz
    • Fizz Buzz
    • The Prime Directive

  • String Methods: The Java `String` class provides a lot of useful methods for performing operations on strings and data manipulation.
    • String Methods
    • String Methods
    • DNA Sequencing

  • Access, Encapsulation, and Static Methods: Let's dive deeper into classes and learn about some of their more advanced features.
    • Access, Encapsulation, and Scope
    • Access, Encapsulation, and Scope
    • Static Methods of the Math Class
    • Static Variables and Methods
    • Static Variables and Methods

  • Inheritance and Polymorphism: Dive deeper into object-oriented Java with inheritance and polymorphism.
    • Inheritance and Polymorphism
    • Inheritance and Polymorphism Quiz
    • Language Families

  • Debugging: Learn about different types of errors in Java and practice finding them.
    • Debugging
    • Debugging
    • Bug Detective

  • Two-Dimensional Arrays: Take your understanding of arrays and loops to the next dimension! Learn how to create and use two-dimensional arrays.
    • 2D Arrays: Java
    • Quiz: 2D Arrays in Java
    • 2D Arrays: Image Manipulation Project


Start your review of Learn Java

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.