Access Modifier In C#
Access Modifier
·
Public - Access in assembly
as well as in reference. Default public access modifier enum, Interface
·
Private - Access within the
scope of curly braces
·
Protected - Access in base
and derived class
·
Internal - Access within
the assembly and within the program that contains its declaration.
·
Protected Internal - Can
access anywhere in the same assembly and
inherited class in another assembly.
public class Class : Class1
{
public void Method1(int num1)
{
//Public Variable //Accessable in derived class
Console.Write(pubString);
//Internal Variable //Accessable in derived class
Console.Write(intString);
//Protected Internal Variable
//Accessable in derived class
Console.Write(proIntString);
//Protected variable //Accessable
in derived class
Console.Write(proString);
//private Variable //Not
Accessable in derived class
Console.Write(pvtString);
}
}
public class Class2
{
//Public Variable //Accessable in derived class
//Internal Variable //Accessable in derived class
//Protected Internal Variable
//Accessable in derived class
Class1 cls = new Class1() { intString = "", proIntString = "", pubString = "" };
}
public class Class1
{
//Public - Accessable in this class, drived class, and refrence class
public string pubString = "Public
String";
//Internal - Accessable within the assembly
internal string intString = "Internal
String";
//Protected Internal - Accessable in Assembly and derived class
protected internal string proIntString = "Internal String";
//Protected - Accessable only in this class and derived class
protected string proString = "Protected
String";
//Private - Accessable only on this class
private string pvtString = "Private
String";
public string Method1()
{
//Private - Accessable within the Method1
string pvtPhone = "Private String";
return pvtPhone;
}
}
Comments