The way I see it, a type is anything that can be used to "type" a variable.
And that doesn't always need to be a class. Enumerations, for example, are
not classes but they are types because a variable can be typed as an
enumeration.
In general, the .NET Framework recognizes these types:
- Value types, for example int, bool, and any enumerations and structs you
create in your code.
- Reference types, i.e., classes, interfaces, arrays, and delegates.
Hope this makes sence.