Heard about object-oriented programming, but not sure what it is? Object-oriented programming (OOP) is a popular style of programming. It comes up in technical interviews often and it's an essential skill for every developer. The problem is that there’s lots of bad info out there about OOP. Lots of myths, misconceptions, bad advice and downright poor tutorials and books. It took me a long time to really get it!
Ultimate Java Part 2: Object-oriented Programming
Ultimate Java Part 2: Object-oriented Programming is a 63-lesson 3 hours 41 minutes self-paced course by Mosh Hamedani (Code with Mosh). Heard about object-oriented programming, but not sure what it is?
Course facts
- Lessons
- 63
- Duration
- 3 hours 41 minutes
- Language
- English
- Added to CourseFlix
- April 2024
- Instructor
- Mosh Hamedani (Code with Mosh)
- Price
- Premium
Before you start
Is it still current?
No recording date is listed. OOP in Java has changed little: classes, constructors and overloading (lessons 5–20), inheritance, polymorphism and abstract classes (33–46), interfaces and dependency injection (47–62) all still apply. Two newer language features are not in the lesson list: records (final in Java 16, JEP 395) and sealed classes (final in Java 17, JEP 409). Read up on them after this course.
What you end up with
Lessons 21–32 refactor a mortgage calculator into classes (Console, MortgageReport, MortgageCalculator) and move it away from static members. Lessons 56–57 are a small project, a MyTube video platform, solved with interfaces and dependency injection. The rest are short code examples, one concept per lesson.
Pick this or…
- Ultimate Java Part 1: Fundamentals: if you have not written Java before. 57 lessons, 3 h 21 min.
- Ultimate Java Part 3: Advanced Topics: if you already know OOP and want generics, collections, streams and concurrency. Recorded in 2019, 113 lessons, 6 h 28 min.
Who teaches Ultimate Java Part 2: Object-oriented Programming? Mosh Hamedani (Code with Mosh)
Mosh Hamedani is the founder of Code with Mosh, one of the highest-volume independent online instructors in software education. He has been publishing courses continuously since the early Udemy era and has taught over a million students across his Udemy catalog and his standalone Code with Mosh platform. His teaching style is patient, rigorously structured, and deliberately beginner-tolerant — the courses are widely cited as some of the most accessible introductions to their respective topics.
The Code with Mosh catalog covers an unusually wide span: web development with HTML / CSS / JavaScript / React / Angular / Node.js, Python and Django, C# and .NET, mobile development with React Native and Flutter, SQL and database fundamentals, and the algorithm / data-structure interview prep tracks. Few independent instructors maintain this much breadth at consistent quality.
The CourseFlix listing under this source carries over 35 Code with Mosh courses spanning that range. Material is paid; Code with Mosh runs on per-course pricing on the original platform. Courses are aimed primarily at developers picking up a new technology from a clean start through to working production proficiency.
What lessons are included in Ultimate Java Part 2: Object-oriented Programming?
| # | Lesson Title | Duration | Access |
|---|---|---|---|
| 1 | 1- Introduction Demo | 00:35 | |
| 2 | 2- Programming Paradigms | 03:41 | |
| 3 | 3- Benefits of Object-oriented Programming | 02:13 | |
| 4 | 4- Course Structure | 01:49 | |
| 5 | 1- Introduction | 00:43 | |
| 6 | 2- Classes and Objects | 03:14 | |
| 7 | 3- Creating Classes | 04:25 | |
| 8 | 4- Creating Objects | 04:31 | |
| 9 | 5- Memory Allocation | 03:54 | |
| 10 | 6- Procedural Programming | 05:38 | |
| 11 | 7- Encapsulation | 04:38 | |
| 12 | 8- Getters and Setters - Title | 07:28 | |
| 13 | 9- Abstraction | 02:25 | |
| 14 | 10- Coupling | 04:19 | |
| 15 | 11- Reducing Coupling | 07:18 | |
| 16 | 12- Constructors | 05:14 | |
| 17 | 13- Method Overloading | 02:53 | |
| 18 | 14- Constructor Overloading | 02:45 | |
| 19 | 15- Static Members | 04:23 | |
| 20 | 17- Summary | 00:51 | |
| 21 | 1- Introduction | 00:55 | |
| 22 | 2- The Problem | 02:41 | |
| 23 | 3- What Classes Do We Need? | 03:42 | |
| 24 | 4- Extracting the Console Class | 02:59 | |
| 25 | 5- Overloading Methods | 02:40 | |
| 26 | 6- Extracting the MortgageReport Class | 01:26 | |
| 27 | 7- Extracting the MortgageCalculator Class | 06:18 | |
| 28 | 8- Moving Away from Static Members | 05:56 | |
| 29 | 9- Moving Static Fields | 02:19 | |
| 30 | 10- Extracting Duplicate Logic | 04:57 | |
| 31 | 11- Extracting getRemainingBalances - Title | 06:14 | |
| 32 | 12- One Last Touch | 02:02 | |
| 33 | 1- Introduction | 00:26 | |
| 34 | 2- Inheritance | 03:50 | |
| 35 | 3- The Object Class | 05:00 | |
| 36 | 4- Constructors and Inheritance | 02:42 | |
| 37 | 5- Access Modifiers | 03:57 | |
| 38 | 6- Overriding Methods | 02:51 | |
| 39 | 7- Upcasting and Downcasting | 05:21 | |
| 40 | 8- Comparing Objects | 09:49 | |
| 41 | 9- Polymorphism | 05:24 | |
| 42 | 10- Abstract Classes and Methods | 02:23 | |
| 43 | 11- Final Classes and Methods | 02:49 | |
| 44 | 12- Deep Inheritance Hierarchies | 02:49 | |
| 45 | 13- Multiple Inheritance | 02:04 | |
| 46 | 15- Summary | 01:11 | |
| 47 | 1- Introduction | 00:37 | |
| 48 | 2- What are Interfaces | 06:05 | |
| 49 | 3- Tightly-coupled Code | 03:57 | |
| 50 | 4- Creating an Interface | 05:24 | |
| 51 | 5- Dependency Injection | 01:30 | |
| 52 | 6- Constructor Injection | 03:21 | |
| 53 | 7- Setter Injection | 02:40 | |
| 54 | 8- Method Injection | 02:28 | |
| 55 | 9- Interface Segregation Principle | 07:11 | |
| 56 | 10- Project- MyTube Video Platform | 03:34 | |
| 57 | 11- Solution | 05:09 | |
| 58 | 12- Fields | 03:14 | |
| 59 | 13- Static Methods | 02:53 | |
| 60 | 14- Private Methods | 02:04 | |
| 61 | 15- Interfaces and Abstract Classes | 02:11 | |
| 62 | 16- When to Use Interfaces | 03:14 | |
| 63 | 18- Course Wrap Up | 00:33 |
One payment unlocks this course and every other premium course. No auto-renew.
See plansRecommended next
What courses are similar to Ultimate Java Part 2: Object-oriented Programming?
Updated 2y agoAWS Serverless REST APIs for Java Developers. CI/CD included
By: UdemyAWS Serverless is probably the quickest way to build a very stable REST APIs that scale to serve millions of users. A very simple Mock API can be created and de14h 34m
Updated 2y agoHibernate and Java Persistence API (JPA) Fundamentals
By: UdemyAre you ready to get more out of JDBC and your data using smart, streamlined techniques? This Hibernate course is a great place to start. You will start by lear7h 24m
Updated 1mo agoMaster Microservices with Java, Spring, Docker, Kubernetes
By: UdemyBuild production-style microservices with Java, Spring Boot, Spring Cloud, Docker, and Kubernetes across 179 hands-on lessons.23h 57m
Updated 2y agoJava Data Structures and Algorithms Masterclass
By: UdemyWelcome to the Java Data Structures and Algorithms Masterclass, the most modern, and the most complete Data Structures and Algorithms in Java course on the inte44h 58m
Updated 1mo agoMicroservices: Clean Architecture, DDD, SAGA, Outbox & Kafka
By: UdemyBuild 5 Spring Boot microservices using Clean Architecture, DDD, SAGA, Outbox, and CQRS patterns, with Kafka as the event store.18h 2m
Updated 3y agoUltimate Java Part 3: Advanced Topics
By: Mosh Hamedani (Code with Mosh)Want to level-up your Java skills and reach the advanced level? Want to become an in-demand Java developer for exciting software companies?6h 28m5/5
Updated 2y agoJava from Zero to First Job, Practical Guide, 2000+ examples
By: UdemyWelcome to the fundamental and the most complete course 'Java from Zero to First Job'. As it's declared in the course name, it's created for people who want to80h 4m
More courses by Mosh Hamedani (Code with Mosh)
ClassicReact: Intermediate Topics
Advance your React skills with the Intermediate Topics course. Learn state management, routing, and best practices for building complex applications using React6h 5m4/5
Updated 3y agoThe Ultimate Django Series: Part 3
Master advanced techniques and best practices for building professional-quality backends.4h 18m
FreeUpdated 3y agoUltimate C++ Part 3: Advanced
To take this course, you should have watched the first two parts or have a thorough understanding of the concepts covered there.3h 41m5/5
Updated 1mo agoXamarin Forms: Build Native Mobile Apps with C#
Build native iOS, Android, and Windows apps from one C# codebase with Xamarin Forms, taught step by step by Mosh Hamedani.7h 17m
Updated 3y agoMastering Next.js 13 with TypeScript
Clear. Concise. Comprehensive. Tired of piecing together disconnected tutorials or dealing with rambling, confusing instructors? This course is for you! It's pe5h 16m5/5
Updated 3y agoThe Ultimate Redux Course
Redux is the most popular state management library for JavaScript apps. It's mostly used with React but it's also becoming popular in Angular, Ember and Vue com6h 5m5/5