Type

Value and Reference Types

 * Variables of Value Types contain their data and are held in the Stack
 * Simple types (int, long, char, etc)
 * Enumerations
 * Structs
 * Variables of Reference Types (objects) store references to their data and are held in the Managed Heap
 * Classes
 * Interfaces
 * Arrays
 * Delegates

Accessibility (Scope)
The scope of a type determines what other code can see and access it. Scope is indicated through modifiers where the type is defined. Two scopes are available to Types.


 * Public
 * All code (Applies to code outside the containing assembly)
 * Private
 * Any code inside its containing type (including nested types) (Applies to code inside the containing assembly)