我对方法访问修饰符存有疑问,我也分享了我的工作示例,实时存在疑问,因此任何人都可以提出一个想法,请分享您的信息。
当继承一个超类到子类时,如果我使用此应用程序,则为什么所有显示相同的方法都创建一个实例,它仅显示3种方法(公共,内部,受保护的内部),如果我将此应用程序绑定到具有继承性的另一个应用程序(公共,受保护的内部) ,受保护的内部)方法仅显示,如果创建实例(公共)方法仅显示
第1类:
namespace ClassLibrary1
{
public class Test
{
public string str1()
{
return "Ethiraj";
}
protected string str2()
{
return "Ethiraj";
}
internal string str3()
{
return "Ethiraj";
}
protected internal string str4()
{
return "Ethiraj";
}
private string str5()
{
return "Ethiraj";
}
public virtual void Display()
{
Console.WriteLine("Sealed method");
}
}
}
相同的应用程序,但具有相同名称空间的不同类。
第2类
namespace ClassLibrary1
{
class Testing2 : Test
{
public void str()
{
Test obj = new Test();
obj.str1();
obj.str3();
obj.str4();
str1();
str2();
str3();
str4();
}
}
}
引用了具有上述应用程序exe的新应用程序
新的应用类别:
using ClassLibrary1;
namespace ClassLibrary2
{
public class Program : Test
{
static void Main(string[] args)
{
Test obj = new Test();
Console.WriteLine(obj.str1());
Console.ReadLine();
}
public void ethi()
{
str1();
str2();
str4();
}
}
}
方法访问修饰符的用途是什么?