public static void ExampleCode1() { Node first = new Node() { Value = 0 }; Node item = first; for (int i = 0; i < 10; i++) { Node next = new Node() { Value = i }; item.Next = next; item = next; } item = first; for (int i = 0; i < 10; i++) { item = item.Next; Console.WriteLine("Node {0} has value {1}", item.GetHashCode(), item.Value); } int myInt = 0; Console.WriteLine("myInt " + myInt.GetType()); Console.WriteLine("myInt " + myInt.GetType().BaseType); Console.WriteLine("myInt " + myInt.GetType().BaseType.BaseType); Console.WriteLine("myInt " + myInt.GetType().BaseType.BaseType.BaseType); Console.WriteLine("node " + first.GetType()); Console.WriteLine("node " + first.GetType().BaseType); Console.WriteLine("node " + first.GetType().BaseType.BaseType); }