Declaration Modifiers - C# and VB.NET

Access Modifiers

Visual Basic.NETC#ClassMethodDescription
Publicpublic x x accessible from anywhere within the same project, from other projects that reference the project, and from any assembly built from the project
Friendinternal - x accessible only from within the same assembly
Protectedprotected x - accessible only from within the same class or a derived class
Protected Friendprotected internal - x accessible within the same assembly and from within derived classes

Other Modifiers

VBC#ContextDescription
MustOverrideabstractmethodSpecifies that a property or procedure is not implemented in this class and must be overridden in a derived class before it can be used
NotOverridablesealedmethodSpecifies that a property or procedure may not be overridden in a derived class
OverridablevirtualmethodSpecifies that a property or procedure may be overridden in a derived class
SharedstaticmethodSpecifies that a property or procedure is implemented independent of an instance of the containing class.
Shadows; OverridesoverridemethodSpecifies that a property or procedure has an implementation in the derived class that replaces that from the base class.
MustInheritabstractclassSpecifies that a class can be used only as a base class and that you cannot create an object directly from it
NotInheritablesealedclassSpecifies that a class cannot be inherited.