About this Course
147,917 recent views

100% online

Start instantly and learn at your own schedule.

Flexible deadlines

Reset deadlines in accordance to your schedule.

Intermediate Level

Approx. 24 hours to complete

Suggested: 6 weeks of study, 4-6 hours/week...

English

Subtitles: English, Korean, German, Chinese (Simplified)

Skills you will gain

Logic ProgrammingJava ProgrammingObject-Oriented Programming (OOP)Sorting Algorithm

100% online

Start instantly and learn at your own schedule.

Flexible deadlines

Reset deadlines in accordance to your schedule.

Intermediate Level

Approx. 24 hours to complete

Suggested: 6 weeks of study, 4-6 hours/week...

English

Subtitles: English, Korean, German, Chinese (Simplified)

Syllabus - What you will learn from this course

Week
1
3 hours to complete

Welcome and Project Overview: Visualizing Data

13 videos (Total 47 min), 8 readings, 3 quizzes
13 videos
Welcome (Object Oriented Java Programming: Data Structures and Beyond Specialization)3m
Welcome (Object Oriented Programming in Java Specialization)1m
Project prototype4m
Your Path through the Course5m
Concept Challenges: what and why?3m
In the Real World: Welcome from Google Engineers50s
Introduction: Classes and Objects25s
Core: Defining Classes and Creating Objects11m
When I Struggled: Objects1m
Core: Overloading Methods6m
Core: Public vs. Private7m
In the Real World: Public vs. Private access27s
8 readings
A Customized Welcome to this Course10m
After completing this course, you will be able to...5m
Is this course right for me?10m
Up Next: A short survey10m
Project overview10m
Additional Resources and Support10m
By the end of this week you will be able to...5m
A note about the main method2m
3 practice exercises
Pre-Course Quiz26m
Survey: Your goals for the course8m
Basics of Objects10m
Week
2
9 hours to complete

Memory Models, Scope, and Starting the Project

16 videos (Total 77 min), 11 readings, 4 quizzes
16 videos
Project: Module 1 Assignment Overview1m
Project: Setting up the starter code in Eclipse4m
Core: Drawing Memory Models with Primitive Data5m
Support: Memory Models for Primitive Types3m
Support: Setting Up and Running Examples in Eclipse2m
When I Struggled: Compiling and Running Code55s
Core: Drawing Memory Models with Objects8m
Concept Challenge: Memory Models 15m
Concept Challenge: Memory Models 25m
Support: Memory Model Drawing Example5m
Core: Introduction to Scope9m
Concept Challenge: Scope6m
Support: Putting it all Together Part 13m
Support: Putting it all Together Part 210m
Project: Module 1 Assignment Walkthrough4m
11 readings
Remember to Choose Your Own Path10m
By the end of this week, you will be able to...10m
Getting ready to write code10m
Important note for learners working offline10m
Setting Up Java and Eclipse on Windows (and Linux)30m
Setting Up Java and Eclipse on Mac30m
Setting Up Unfolding Maps10m
Support: Troubleshooting Common Issues10m
Congratulations and quiz answers10m
Programming Assignment Instructions5h
Congratulations and quiz answers10m
4 practice exercises
Where to next?2m
Working with Code2m
Objects, memory models, and scope10m
Programming Assignment Quiz (Do programming assignment FIRST)14m
Week
3
8 hours to complete

Graphical output: Creating GUIs and Displaying Data

23 videos (Total 136 min), 4 readings, 1 quiz
23 videos
Project: Module 3 Programming Assignment Overview1m
Core: Graphical User Interfaces4m
Core: Using PApplet11m
When I struggled: GUIs27s
Core: Resizing Images5m
Core: Colors8m
When I Struggled: Documentation1m
Support: Setting up a Canvas7m
Support: Drawing Happy Face7m
Support: Loading and Displaying Images6m
Core: Why Processing?1m
Support: Using Documentation7m
In the Real World: Documentation3m
Core: Setting up map visualization9m
Core: Adding markers5m
Core: Using live data11m
Bonus: Visualizing life expectancy29s
Bonus: Setting up the map4m
Bonus: Representing data8m
Bonus: Coloring markers11m
Support: ArrayLists and Generics8m
Project: Module 3 Programming Assignment Walkthrough8m
4 readings
By the end of this week you will be able to...10m
Support: Understanding Features and Markers30m
Programming Assignment Instructions5h
Congratulations and quiz answers10m
1 practice exercise
Programming Assignment Quiz (Do programming assignment FIRST)20m
Week
4
5 hours to complete

Inheritance

25 videos (Total 97 min), 3 readings, 1 quiz
25 videos
Project: Module 4 Programming Assignment Overview1m
Core: Why use Inheritance?5m
Core: Extends5m
In the Real World: Inheritance 152s
Core: Reference vs. Object Type3m
When I struggled: the "Is a" relationship40s
Concept Challenge: References and Objects9m
Core: Visibility Modifiers4m
When I Struggled: Inheritance45s
Core: Object Creation in Java3m
Core: Compiler Rules for Class Construction4m
Core: Variable Initialization in a Class Hierarchy4m
Concept Challenge: Inheritance Constructors 14m
Concept Challenge: Inheritance Constructors 23m
Core: Method Overriding5m
Core: Introduction to Polymorphism2m
When I struggled: Polymorphism56s
Core: Rules to Follow for Polymorphism4m
Core: Casting Objects3m
Concept Challenge: Polymorphism Part 16m
Concept Challenge: Polymorphism Part 26m
Core: Abstract Classes and Interfaces5m
In the Real World: Inheritance 21m
Project: Module 4 Programming Assignment Walkthrough7m
3 readings
By the end of this week, you will be able to...5m
Programming Assignment Instructions3h
Congratulations and Quiz Answers10m
1 practice exercise
Programming Assignment Quiz (Do programming assignment FIRST)15m
4.7
879 ReviewsChevron Right

36%

started a new career after completing these courses

35%

got a tangible career benefit from this course

15%

got a pay increase or promotion

Top reviews from Object Oriented Programming in Java

By DBOct 13th 2017

Great into to Java, instructors have clearly put thought in to the format with the choose your own learning style videos, and additional coverage where it may be needed. These have been very helpful.

By LROct 14th 2015

I loved this course! The course videos and the projects sharpened my idea about some of the toughest concepts of Java and OOP. I recommend this course to anyone interested in learning OOP in Java. ?

Instructors

Avatar

Mia Minnes

Assistant Teaching Professor
Computer Science and Engineering
Avatar

Leo Porter

Associate Teaching Professor
Computer Science and Engineering
Avatar

Christine Alvarado

Associate Teaching Professor
Computer Science and Engineering

About University of California San Diego

UC San Diego is an academic powerhouse and economic engine, recognized as one of the top 10 public universities by U.S. News and World Report. Innovation is central to who we are and what we do. Here, students learn that knowledge isn't just acquired in the classroom—life is their laboratory....

Frequently Asked Questions

  • Once you enroll for a Certificate, you’ll have access to all videos, quizzes, and programming assignments (if applicable). Peer review assignments can only be submitted and reviewed once your session has begun. If you choose to explore the course without purchasing, you may not be able to access certain assignments.

  • When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.

  • This course is meant for learners with a bit of programming background, preferably in Java, who are looking to expand their Software Engineering abilities. Specifically, learners should be already comfortable with loops ("for", "while"), conditionals ("if", "else"), and both calling and authoring methods (functions).

    If you're not sure, that's okay! We have a practice quiz right at the start of the course which will help steer you in the right direction.

More questions? Visit the Learner Help Center.