public abstract class Shape
public class Cube : Shape
public class Quad : Shape
public static void Main()
Shape shape = new Cube();
Console.WriteLine("it's a cube!");
Console.WriteLine("not a cube!");
var cubeCast = shape as Cube;
Console.WriteLine("it's a cube!");
Console.WriteLine("not a cube!");
Console.WriteLine("it's a cube!");
Console.WriteLine("not a cube!");