Data Types C#

/*
C# Programming Tips & Techniques
by Charles Wright, Kris Jamsa
Publisher: Osborne/McGraw-Hill (December 28, 2001)
ISBN: 0072193794
*/
namespace nsBox
{
    using System;
    struct Point
    {
        public Point (int x, int y)
        {
            cx = x;
            cy = y;
        }
        public override string ToString ()
        {
            return ("(" + cx + ", " + cy + ")");
        }
        public int cx;
        public int cy;
    }
    public class BoxUnBox
    {
        static public void Main ()
        {
            long LongVal = 9600;
            object o = LongVal;
            ShowObject (o);
            o = 4096;
            ShowObject (o);
            Point point = new Point (42, 96);
            ShowObject (point);
            clsBox test = new clsBox();
            ShowObject (test); 
        }
        static public void ShowObject (object o)
        {
            if (o is int)
                Console.WriteLine ("The object is an integer");
            if (o is long)
                Console.WriteLine ("The object is a long");
            else if (o is Point)
                Console.WriteLine ("The object is a Point structure");
            else if (o is clsBox)
                Console.WriteLine ("The object is a clsBox class object");
            Console.WriteLine ("The value of object is " + o + "\r\n");
        }
    }
    class clsBox
    {
        public override string ToString()
        {
            return ("\"-- clsBox --\"");
        }
    }       
}