Skip to content

Object Oriented Programming in Java

Free Course

Build Interactive Java Programs

Related Nanodegree Program

Android Kotlin Developer

About this course

This course will introduce you to some of the most powerful programming concepts in Java, including: objects, inheritance and collections. You will learn how to use these object-oriented programming concepts in code examples, discover how these concepts are used in applications that require user input, and understand the benefits of mastering these concepts in Java.

By the end of the course, you will create your own game, understand how and when to apply foundational Java concepts, and will gain a deeper understanding of the tools and logic that professional Java developers use everyday. You will also have the Java programming foundations you need to take our Android Developer Nanodegree program.

What you will learn

  1. The World of Objects
    • Learn how to create classes and objects and use them in programs
    • Discover the purpose of constructors, fields and methods
    • Learn how to use access modifiers to set your classes to public or private
  2. User Interaction
    • Learn how to accept user input at runtime
    • Learn how to pass user input to be stored for access later
    • Build a program that a user can interact with
  3. Inheritance
    • Understand the core OOP concepts of encapsulation, polymorphism and inheritance
    • Learn how to use interfaces to extend and add features to classes
    • Experiment with overriding methods and the `super` keyword to access methods
  4. Collections
    • Learn about Collection types: list, set, queue, stack and map
    • Understand how the Collection interface is implemented

Prerequisites and requirements

You should be familiar with Java syntax, as well as basic Java programming concepts like variables, data types, functions and loops. You also should have an IDE (Integrated Development Environment) installed on your machine that supports programming in Java, such as IntelliJ or Android Studio. If you lack this background, please take our free Java Programming Basics course prior to enrolling in this course.

See the Technology Requirements for using Udacity.

Why take this course?

Java is the one of the most popular programming languages in the world today. It works on any platform, and is the core language used in developing Android apps. It’s a great first language for any aspiring programmer, so whether you want to program Android apps, web apps, or simply learn the foundational skills that all programmers use, this course is a great place to start!

Learn with the best.

  • Asser Samak
    Asser Samak


  • James Williams
    James Williams