A type is a template that describes the kind of data that variables of that type can contain and how variables of that type should behave. Visual Basic supports three kinds: intrinsic types, user-defined types, and classes. Types can be used to define variables and objects that hold data. Types also define the operations that variables or objects can perform. Before we look at how the three kinds of types manage this, let’s define some terms for this discussion. These aren’t necessarily standard terms, but they help me describe my mental model of how types work.
Now let’s look at how these terms apply to different types.