C# · 12月 20, 2021

C# — 结构、访问修饰符

 C# — 结构、访问修饰符

1. 结构:

对于结构,不像类那样存在继承。 一个结构不能从另一个结构或类继承,而且不能作为一个类的基。 但是,结构从基类 Object 继承。 结构可实现接口,其方式同类完全一样。无法使用 struct 关键字声明类。 在 C# 中,类与结构在语义上是不同的。 结构是值类型,而类是引用类型。 将较小的类声明为结构,可以提高系统的处理效率。

Main(= myPoint(,,</span><span style=”color: #0000ff”&gt;public</span> <span style=”color: #0000ff”&gt;struct</span><span style=”color: #000000″&gt; myPoint{ </span><span style=”color: #0000ff”&gt;public</span> <span style=”color: #0000ff”&gt;int</span><span style=”color: #000000″&gt; x,y,z; </span><span style=”color: #0000ff”&gt;public</span> myPoint(<span style=”color: #0000ff”&gt;int</span> xValue,<span style=”color: #0000ff”&gt;int</span> yValue,<span style=”color: #0000ff”&gt;int</span><span style=”color: #000000″&gt; zValue) { x </span>=<span style=”color: #000000″&gt; xValue; y </span>=<span style=”color: #000000″&gt; yValue; z </span>=<span style=”color: #000000″&gt; zValue; }}</span></pre>

2. 访问修饰符

所有类型和类型成员都具有可访问性级别,用来控制是否可以在您程序集的其他代码中或其他程序集中使用它们。 可使用一下访问修饰符指定声明类型或成员时类型或成员的可访问性。public 同一程序集中的任何其他代码或引用该程序集的其他程序集都可以访问该类型或成员。private 只有同一类或结构中的代码可以访问该类型或成员。protected 只有同一类或结构或者此类的派生类中的代码才可以访问的类型或成员。internal 同一程序集中的任何代码都可以访问该类型或成员,但其他程序集中的代码不可以。protected internal 由其声明的程序集或另一个程序集派生的类中任何代码都可访问的类型或成员。 从另一个程序集进行访问必须在类声明中发生,该类声明派生自其中声明受保护的内部元素的类,并且必须通过派生的类类型的实例发生。