Modifiers (C# Reference)

Modifiers are used to modify declarations of types and type members. This section introduces the C# modifiers.

Modifier Purpose
Access Modifiers

- public
- private
- internal
- protected
Specifies the declared accessibility of types and type members.
abstract Indicates that a class is intended only to be a base class of other classes.
async Indicates that the modified method, lambda expression, or anonymous method is asynchronous.
const Specifies that the value of the field or the local variable cannot be modified.
event Declares an event.
extern Indicates that the method is implemented externally.
new Explicitly hides a member inherited from a base class.
override Provides a new implementation of a virtual member inherited from a base class.
partial Defines partial classes, structs and methods throughout the same assembly.
readonly Declares a field that can only be assigned values as part of the declaration or in a constructor in the same class.
sealed Specifies that a class cannot be inherited.
static Declares a member that belongs to the type itself instead of to a specific object.
unsafe Declares an unsafe context.
virtual Declares a method or an accessor whose implementation can be changed by an overriding member in a derived class.
volatile Indicates that a field can be modified in the program by something such as the operating system, the hardware, or a concurrently executing thread.

See also