static void Main(string[] args) { Animal animal = new Animal(); //Console.WriteLine(animal.Id); //Console.WriteLine(animal._privateProperty); Dog dog = new Dog("Barnie", "Brown", "Labrador"); Console.WriteLine(dog.Name); //Name property is public, inherited from Animal, also belongs to Dog dog.Name = "Sparkie"; Console.WriteLine(dog.Name); // Console.WriteLine(dog._privateProperty); -> private property // Console.WriteLine(dog.Id); _> protectd property dog.PrintId(); //inherited method from Animal dog.PrintBasicInfo(); Cat cat = new Cat() { Name = "Garfield", Color = "Orange", IsLazy = true }; cat.PrintBasicInfo(); //method from Animal dog.Eat("Meat"); //method from Dog dog.Eat(); //method from Cat cat.Eat("Fish"); Console.ReadLine(); }