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.

Course Cost
Approx. 4 weeks
Skill Level
Included in Course
  • Rich Learning Content

  • Interactive Quizzes

  • Taught by Industry Pros

  • Self-Paced Learning

  • Student Support Community

Join the Path to Greatness

This free course is your first step towards a new career with the Become an iOS Developer Nanodegree Program.

Free Course

Object Oriented Programming in Java

Enhance your skill set and boost your hirability through innovative, independent learning.

Icon steps

Course Leads

  • Asser Samak
    Asser Samak


  • James Williams
    James Williams


What You Will Learn

Lesson 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

Lesson 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

Lesson 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

Lesson 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!

What do I get?
  • Instructor videos
  • Learn by doing exercises
  • Taught by industry professionals
Icon globe

Udacity 现已提供中文版本! A Udacity tem uma página em português para você! There's a local version of Udacity for you! Sprechen Sie Deutsch?

Besuchen Sie de.udacity.com und entdecken Sie lokale Angebote, unsere Partnerunternehmen und Udacitys deutschsprachigen Blog.

前往优达学城中文网站 Ir para a página brasileira Go to Indian Site Icon flag de Zu de.udacity.com continue in English