Object Oriented Programming in Java (Udacity)

Offered by Udacity,
Object Oriented Programming in Java (Udacity)

Build Interactive Java Programs. 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.

Class Deals by MOOC List - Click here and see Udacity's Active Discounts, Deals, and Promo Codes.

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.
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 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.

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

Related Courses

Programming with Scratch (Coursera) Coursera
The Hong Kong University of Science and Technology - HKUST

Programming with Scratch (Coursera)

Learning coding is not only about understanding the programming language being used, but also developing important computational thinking skills, which are useful for problem solving across many disciplinary areas. In this course, students will learn basic programming skills by creating interactive storybooks, animations, and games with Scratch, which is a block-based visual programming language for anyone new to coding.

Nov 23rd 2026
5-12 Weeks
Introduction and Programming with IoT Boards (Coursera) Coursera
Pohang University of Science and Technology - POSTECH

Introduction and Programming with IoT Boards (Coursera)

Internet of Things (IoT) is an emerging area of information and communications technology (ICT) involving many disciplines of computer science and engineering including sensors/actuators, communications networking, server platforms, data analytics and smart applications. IoT is considered to be an essential part of the 4th Industrial Revolution along with AI and Big Data. This course will be very useful to senior undergraduate and graduate students as well as engineers who are working in the industry.

Nov 23rd 2026
5-12 Weeks
JavaScript Design Patterns (Udacity) Udacity
Udacity

JavaScript Design Patterns (Udacity)

Organizing Code in a Disorganized World. This course covers methods for organizing your code, both conceptually and literally. You’ll learn the importance of separating concerns when writing JavaScript, gaining hands-on experience along the way. Separating concerns can be done with or without an organizational library or framework. We’ll learn how to separate concerns without one, and then we’ll explore an organizational library together. You’ll also learn strategies for exploring other libraries and frameworks on your own.

Self Paced
Self-Paced
Learn Swift Programming Syntax (Udacity) Udacity
Udacity

Learn Swift Programming Syntax (Udacity)

From Optionals to Closure Expressions. Swift is a language created by Apple specifically for iOS and OS X development. It’s fast, concise, and comes with tools which make it easier than ever to visualize one's code. This course focuses on the syntax of the Swift programming language. By the end of the course, students should be able to apply Swift essentials to building iOS apps and employ Swift's more unique elements, like optional types and switch statements, with confidence.

Self Paced
Self-Paced
Swift for Developers (Udacity) Udacity
Udacity

Swift for Developers (Udacity)

Your Next Programming Language. This course offers a quick practical introduction to Swift basics, including types, variables, constants, and functions. It combines syntax exercises with hands-on iOS development in Xcode. By the end of the course students will build their first iOS app, an app that creates and displays song lyrics customized to user input.

Self Paced
Self-Paced
Introduction to Genetics and Evolution (Coursera) Coursera
Duke University

Introduction to Genetics and Evolution (Coursera)

Introduction to Genetics and Evolution is a college-level class being offered simultaneously to new students at Duke University. The course gives interested people a very basic overview of some principles behind these very fundamental areas of biology. We often hear about new "genome sequences," commercial kits that can tell you about your ancestry (including pre-human) from your DNA or disease predispositions, debates about the truth of evolution, why animals behave the way they do, and how people found "genetic evidence for natural selection." This course provides the basic biology you need to understand all of these issues better, tries to clarify some misconceptions, and tries to prepare students for future, more advanced coursework in Biology (and especially evolutionary genetics). No prior coursework is assumed.

Nov 23rd 2026
5-12 Weeks