C# Intermediate: Classes, Interfaces and OOP
An in-depth, step-by-step guide to classes, interfaces and object-oriented programming (OOP) with C#
What you will learn?
- Work with classes, constructors, fields, properties, methods and indexers
- Use encapsulation to improve the robustness of the code and reduce the impact of change
- Re-use code using inheritance and composition
- Understand the problems with inheritance and how composition solves these problems
- Change the behaviour of an application by extending its code, rather than changing it
- Develop loosely-coupled, testable and extensible applications using interfaces
Your trainer
Mosh Hamedani
Hi! My name is Mosh (Moshfegh) Hamedani! I'm a passionate software engineer with two decades of experience and I've taught over 3 million people who to code or how to become professional software engineers through my YouTube channel and online courses.
My goal is to make software engineering fun and accessible to everyone. That's why my courses are simple, pragmatic and free of BS.
45 lessons
Easy to follow lectures and videos covering subject details.
5.5 hours
This course includes hours of video material. Watch on-demand, anytime, anywhere.
Certificate of Completion
You will earn a Certificate of Completion at the end of this course.
Course curriculum
- What You are Going to Learn02:42
- Who is Your Instructor01:27
- Source Code00:02
- Exercises00:46
- Asking Questions00:33
- Before You Get Started00:50
- Introduction to Classes13:56
- Constructors22:54
- Object Initializers02:20
- Methods23:59
- Fields09:21
- Access Modifiers10:48
- Properties16:19
- Indexers09:30
- Summary7 pages
- Exercises2 pages
- Class Coupling03:45
- Inheritance07:54
- Composition07:27
- Favour Composition over Inheritance08:48
- Summary2 pages
- Access Modifiers22:37
- Constructors and Inheritance09:42
- Upcasting and Downcasting17:45
- Boxing and Unboxing07:09
- Summary3 pages
- Exercises3 pages
- Method Overriding17:15
- Abstract Classes and Members11:58
- Sealed Classes and Members02:38
- Summary3 pages
- Exercises3 pages
- What is an Interface?04:35
- Interfaces and Testability25:12
- Interfaces and Extensibility18:15
- Interfaces are NOT for Multiple Inheritance04:26
- Interfaces and Polymorphism11:47
- Summary3 pages
- Exercises2 pages
- Final Words01:01
- My Other Courses02:02
- Get My Other Courses with a Discount00:20
- StopWatch Exercise12:21
- Stack Exercise07:24
- Workflow Engine Exercise12:36
Online Courses
Learning C# doesn't have to be hard. Here is our curated list of recommended online courses that will guide you step-by-step in the learning process.
Learn moreBooks
Are you an avid book reader? Do you prefer paperback, or maybe Kindle version? Take a look at our curated list of C# related books and take your
YouTube videos
The number of high-quality and free C# video tutorials is growing fast. Check this curated list of recommended videos - there is no excuse to stop learning.
Learn more