- Data Structure
- Problem Solving
- Java Programming
- Object-Oriented Programming (OOP)
- Logic Programming
- Sorting Algorithm
- Trees (Data Structures)
- Linked List
- Binary Tree
- Graphs
- Search Algorithm
- Graph Algorithms
Object Oriented Java Programming: Data Structures and Beyond Specialization
Develop Powerful Interactive Software. Advance your software development knowledge in four comprehensive courses.
Offered By
Skills you will gain
About this Specialization
Some related experience required.
Some related experience required.
How the Specialization Works
Take Courses
A Coursera Specialization is a series of courses that helps you master a skill. To begin, enroll in the Specialization directly, or review its courses and choose the one you'd like to start with. When you subscribe to a course that is part of a Specialization, you’re automatically subscribed to the full Specialization. It’s okay to complete just one course — you can pause your learning or end your subscription at any time. Visit your learner dashboard to track your course enrollments and your progress.
Hands-on Project
Every Specialization includes a hands-on project. You'll need to successfully finish the project(s) to complete the Specialization and earn your certificate. If the Specialization includes a separate course for the hands-on project, you'll need to finish each of the other courses before you can start it.
Earn a Certificate
When you finish every course and complete the hands-on project, you'll earn a Certificate that you can share with prospective employers and your professional network.

There are 5 Courses in this Specialization
Object Oriented Programming in Java
Welcome to our course on Object Oriented Programming in Java using data visualization. People come to this course with many different goals -- and we are really excited to work with all of you! Some of you want to be professional software developers, others want to improve your programming skills to implement that cool personal project that you’ve been thinking about, while others of you might not yet know why you’re here and are trying to figure out what this course is all about.
Data Structures and Performance
How do Java programs deal with vast quantities of data? Many of the data structures and algorithms that work with introductory toy examples break when applications process real, large data sets. Efficiency is critical, but how do we achieve it, and how do we even measure it?
Advanced Data Structures in Java
How does Google Maps plan the best route for getting around town given current traffic conditions? How does an internet router forward packets of network traffic to minimize delay? How does an aid group allocate resources to its affiliated local partners?
Mastering the Software Engineering Interview
You’ve hit a major milestone as a computer scientist and are becoming a capable programmer. You now know how to solve problems, write algorithms, and analyze solutions; and you have a wealth of tools (like data structures) at your disposal. You may now be ready for an internship or (possibly) an entry-level software engineering job. But can you land the internship/job? It depends in part on how well you can solve new technical problems and communicate during interviews. How can you get better at this? Practice!
Offered by

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
What is the refund policy?
Can I just enroll in a single course?
Is financial aid available?
Can I take the course for free?
Is this course really 100% online? Do I need to attend any classes in person?
Will I earn university credit for completing the Specialization?
How long does it take to complete the Java Programming: Object-Oriented Design of Data Structures Specialization?
How often is each course in the Specialization offered?
Do I need to take the courses in a specific order?
Will I earn university credit for completing the Java Programming: Object-Oriented Design of Data Structures Specialization?
What will I be able to do upon completing the Java Programming: Object-Oriented Design of Data Structures Specialization?
How is Google involved in content creation and teaching for this Specialization?
More questions? Visit the Learner Help Center.