All my college years I have been using public
, and would like to know the difference between public
, private
, and protected
?
Also what does static
do as opposed to having nothing?
access-modifiersasp.netcnet
All my college years I have been using public
, and would like to know the difference between public
, private
, and protected
?
Also what does static
do as opposed to having nothing?
Best Answer
Access modifiers
From docs.microsoft.com:
When no access modifier is set, a default access modifier is used. So there is always some form of access modifier even if it's not set.
static
modifierThe static modifier on a class means that the class cannot be instantiated, and that all of its members are static. A static member has one version regardless of how many instances of its enclosing type are created.
A static class is basically the same as a non-static class, but there is one difference: a static class cannot be externally instantiated. In other words, you cannot use the new keyword to create a variable of the class type. Because there is no instance variable, you access the members of a static class by using the class name itself.
However, there is a such thing as a static constructor. Any class can have one of these, including static classes. They cannot be called directly & cannot have parameters (other than any type parameters on the class itself). A static constructor is called automatically to initialize the class before the first instance is created or any static members are referenced. Looks like this:
Static classes are often used as services, you can use them like so: