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.
    • Lesson: Hello World
    • Article: Java Program Structure
    • Quiz: Hello World
    • Project: Planting a Tree
    • Article: 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.
    • Lesson: Learn Java: Variables
    • Quiz: Java Variables Quiz
    • Project: Java Variables: Mad Libs
    • Lesson: Learn Java: Manipulating Variables
    • Quiz: Java Variable Manipulation Quiz
    • Project: Math Magic
  • Object-Oriented Java: Learn about object-oriented programming in Java. Explore syntax for defining classes and creating instances.

    • VideoContentItem: Classes and Objects
    • Lesson: Java: Introduction to Classes
    • Quiz: Intro to Java Classes
    • Lesson: Learn Java: Methods
    • Quiz: Java Methods Quiz
    • Project: A Basic Calculator
    • Project: Build A Droid
  • Conditionals and Control Flow: Conditionals and control flow in Java programs.
    • Lesson: Conditionals and Control Flow
    • Lesson: Conditional Operators
    • Quiz: Conditionals and Control Flow
    • Project: A Simple Car Loan Payment Calculator
    • Project: Continents and Cities
  • Arrays and ArrayLists: Build lists of data with Java arrays and ArrayLists.
    • Lesson: Learn Java: Arrays
    • Quiz: Java Arrays Quiz
    • Lesson: Learn Java: ArrayLists
    • Quiz: Java ArrayList Quiz
    • Project: Desert Island Playlist
  • Loops: Use loops to iterate through lists and repeat code.
    • Lesson: Learn Java: Loops
    • Quiz: Learn Java: Loops Quiz
    • Project: Fizz Buzz
    • Project: The Prime Directive
  • String Methods: The Java `String` class provides a lot of useful methods for performing operations on strings and data manipulation.
    • Lesson: String Methods
    • Quiz: String Methods
    • Project: DNA Sequencing
  • Access, Encapsulation, and Static Methods: Let's dive deeper into classes and learn about some of their more advanced features.
    • Lesson: Access, Encapsulation, and Scope
    • Quiz: Access, Encapsulation, and Scope
    • Article: Static Methods of the Math Class
    • Lesson: Static Variables and Methods
    • Quiz: Static Variables and Methods
  • Inheritance and Polymorphism: Dive deeper into object-oriented Java with inheritance and polymorphism.
    • Lesson: Inheritance and Polymorphism
    • Quiz: Inheritance and Polymorphism Quiz
    • Project: Language Families
  • Debugging: Learn about different types of errors in Java and practice finding them.
    • Lesson: Debugging
    • Quiz: Debugging
    • Project: 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.
    • Lesson: 2D Arrays: Java
    • Quiz: Quiz: 2D Arrays in Java
    • Project: 2D Arrays: Image Manipulation Project
    • Informational: Next Steps

Taught by

Alisha Grama


4.4 rating at Codecademy based on 8117 ratings

Start your review of Learn Java

Never Stop Learning.

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

Someone learning on their laptop while sitting on the floor.