Java Programming: Object Oriented Concepts & Practice
Advance your Java skills with OOP, interfaces, collections, and file I/O. Complete real-world, hands-on projects such as a mood tracker and time-off system.

Language
- English
Topic
- Java
Skills You Will Learn
- Data Structures, Application Development, Program Development, Data Management, Java Programming, Object-Oriented Programming
Offered By
- IBMSkillsNetwork
Estimated Effort
- 20 Hours
Platform
- SkillsNetwork
Last Update
- August 19, 2025
- Gain practical experience applying OOP techniques to build modular, reusable Java applications using classes, objects, encapsulation, and abstraction.
- Use inheritance, polymorphism, interfaces, and method overloading to create flexible, maintainable Java code, skills vital for real-world development roles.
- Manage application data effectively using the Java Collections Framework, including lists, sets, queues, and maps, key for scalable back-end systems.
- Work with files, directories, and date-time APIs to handle system-level tasks in Java, a common requirement in enterprise-grade applications.
- Video: Course Introduction
- Reading: General Information
- Reading: Learning Objectives and Syllabus
- Reading: Grading Scheme
- Reading: Helpful Tips for Course Completion
- Module Introduction and Learning Objectives
- An Introduction to Object Oriented Programming
- Using Classes and Objects in Java
- Create Your First Class
- Using Encapsulation in Java
- Building Java Constructors
- Build Your own Java Constructor
- (Optional) Coding Challenge: Object Oriented Basics in Java
- Practice Quiz: Object Oriented Programming Basics in Java
- Module 1 Summary: Object Oriented Programming Basics in Java
- Module 1 Glossary: Introduction to Java Environment and Ecosystem
- Module 1 Coding Cheat Sheet: Object Oriented Programming Basics in Java
- Module 1 Graded Quiz: Object Oriented Programming Basics in Java
- Module Introduction and Learning Objectives
- Understanding Inheritance in Java
- Polymorphism Explained
- Implementing Polymorphism
- Applying Abstraction in Java
- Using Inner Classes in Java
- Design Interfaces and Abstract Classes
- (Optional) Coding Challenge: Advanced Object Oriented Programming in Java
- Practice Quiz: Advanced Object Oriented Programming Concepts in Java
- Module 2 Summary: Advanced Object Oriented Programming Concepts in Java
- Module 2 Glossary: Advanced Object Oriented Programming Concepts in Java
- Module 2 Coding Cheat Sheet: Advanced Object Oriented Programming Concepts in Java
- Module 2 Graded Quiz: Advanced Object Oriented Programming Concepts in Java
- Module Introduction and Learning Objectives
- An Introduction to Java Collection Framework
- Working with Lists: ArrayList and LinkedList
- Create a Simple To-Do List Using ArrayList
- Exploring Sets: HashSet and TreeSet
- Using Queues in Java
- Using Maps: HashMap and TreeMap
- Implement a Phonebook Using a HashMap
- Using Collections in Real-World Scenarios
- (Optional) Coding Challenge: Working with Collections in Java
- Practice Quiz: Working with Collections in Java
- Module 3 Summary: Working with Collections in Java
- Module 3 Glossary: Working with Collections in Java
- Module 3 Coding Cheat Sheet: Working with Collections in Java
- Module 3 Graded Quiz: Working with Collections in Java
- Module Introduction and Learning Objectives
- An Introduction to Java File Handling
- Using Byte Streams in Java
- Working with File Input and Output Streams
- Read a Text File
- Managing Directories in Java
- Use Directory Explorer
- (Optional) Coding Challenge: File and Directory Management in Java
- Practice Quiz: File and Directory Management in Java
- Module 4 Summary: File and Directory Management in Java
- Module 4 Glossary: File and Directory Management in Java
- Module 4 Coding Cheat Sheet: File and Directory Management in Java
- Module 4 Graded Quiz: File and Directory Management in Java
- Module Introduction and Learning Objectives
- An Introduction to Java Date and Time Classes
- Formatting Dates in Java
- Format a Given Date and Time
- Using Time Zones in Java
- Calculate the Difference Between Two Dates
- Lab: (Optional) Coding Challenge: Date and Time Handling in Java
- Parsing Dates from Strings
- Practice Quiz: Date and Time Handling in Java
- Module 5 Summary: Date and Time Handling in Java
- Module 5 Glossary: Date and Time Handling in Java
- Module 5 Coding Cheat Sheet: Date and Time Handling in Java
- Module 5 Graded Quiz: Date and Time Handling in Java
- Reading: Module Introduction and Learning Objectives
- Final Project Overview
- Final Project
- Final Project Assessment
- Video: Course Wrap-Up
- Reading: Course Glossary
- Reading: Course Coding Cheatsheet
- Reading: Congratulations and Next Steps
- Reading: Thanks from the Course Team
- Copyrights and Trademarks
- Course Rating and Feedback

Language
- English
Topic
- Java
Skills You Will Learn
- Data Structures, Application Development, Program Development, Data Management, Java Programming, Object-Oriented Programming
Offered By
- IBMSkillsNetwork
Estimated Effort
- 20 Hours
Platform
- SkillsNetwork
Last Update
- August 19, 2025
Instructors
Ramanujam Srinivasan
Chief Architect
With over 24 years of experience, I have effectively led technology and architecture teams, driving digital transformation and business growth for Fortune 500 companies. My expertise includes managing strategic consulting engagements and implementing large-scale solutions that have achieved annual contract values between $10M and $300M, particularly in turnaround scenarios. As an engineering leader, I guide cross-functional teams in deploying distributed solutions across various domains, including Cloud, AI/ML, eCommerce, Microservices, DevSecOps, legacy modernization, performance optimization, Generative AI, and Machine Learning. I prioritize building exceptional technology teams by mentoring and inspiring top technical talent, fostering a culture of rapid innovation and collaboration. I serve as a trusted advisor, nurturing long-term relationships with C-Level executives and stakeholders to drive the implementation of strategic technology initiatives. My approach combines a big-picture perspective with attention to detail, providing hands-on guidance for creating highly scalable and efficient solutions. I assist in developing minimum viable products (MVPs), evaluating products, enabling developers, and advocating for open-source technologies. As an innovation catalyst, I lead the ideation and Go-to-Market strategies for intellectual property solutions that leverage cloud services, data analytics, and AI/ML to provide strategic advantages to enterprise customers. Additionally, I have authored successful technology courses on Coursera covering topics such as Microsoft security, front-end and back-end development, DevOps, and Generative AI, positively impacting over 70,000 learners.
Read moreIBM Skills Network
IBM Skills Network Team
At IBM Skills Network, we know how crucial it is for businesses, professionals, and students to build hands-on, job-ready skills quickly to stay competitive. Our courses are designed by experts who work at the forefront of technological innovation. With years of experience in fields like AI, software development, cybersecurity, data science, business management, and more, our instructors bring real-world insights and practical, hands-on learning to every module. Whether you're upskilling yourself or your team, we will equip you with the practical experience and future focused technical and business knowledge you need to succeed in today’s ever-evolving world.
Read more