In the previous chapter, we looked at classes, objects, and the four principles of OOP. In this chapter, we will learn about some C# language features that make the language an OOP language. Without knowing these concepts, writing object-oriented code with C# programming could be difficult, or will prevent you from using it to its full potential. In Chapter 2, Hello OOP - Classes and Objects, we learned that abstraction, inheritance, encapsulation, and polymorphism are the four basic principles of OOP, but we haven't yet learned how the C# language can be used to fulfill these principles. We are going to discuss this topic in this chapter.
In this chapter, we will cover the following topics:
- Interfaces
- The abstract class
- The partial class
- The sealed class
- Tuples
- Properties
- Access specifiers for classes