The concepts for different application domains work the same with generics as with nongeneric types. Listing 3.7 Proof that different closed types have different static fields 87 Advanced generics within another, and types with multiple generic parameters. This sounds a lot more complicated, but it works as you probably think it should. Listing 3.8 shows this in action, this time using static constructors to show just how many types there are. public class Outer { public class Inner { static Inner() { Console.WriteLine("Outer<{0}>.Inner<{1},{2}>", typeof(T).Name, typeof(U).Name, typeof(V).Name); } public static void DummyMethod() { } } } ... Outer.Inner.DummyMethod(); Outer.Inner.DummyMethod(); Outer