public static void Main()
var cat1 = new Cat("Emi");
var dog1 = new Dog("Buddy");
public abstract class Animal
public string Name {get; set;}
public Animal(string name)
public virtual void MakeSound()
Console.WriteLine($"{Name} is making sound...");
public class Cat : Animal
public Cat(string name) : base(name)
public override void MakeSound()
Console.WriteLine($"{Name} says meow");
public class Dog : Animal
public Dog(string name) : base(name)