C# Intermediate - Inheritance in C#