C# 中的 internal 和 private 修饰符有什么区别?

csharpprogrammingserver side programming更新于 2025/10/13 16:52:17

内部访问说明符

内部访问说明符允许类将其成员变量和成员函数公开给当前程序集中的其他函数和对象。

任何带有 internal 访问说明符的成员都可以从定义该成员的应用程序中的任何类或方法访问。

下面是 −

示例

using System;

namespace RectangleApplication {
   class Rectangle {
      //成员变量
      internal double length;
      internal double width;

      double GetArea() {
         return length * width;
      }

      public void Display() {
         Console.WriteLine("Length: {0}", length);
         Console.WriteLine("Width: {0}", width);
         Console.WriteLine("Area: {0}", GetArea());
      }
   }//结束 Rectangle 类

   class ExecuteRectangle {
      static void Main(string[] args) {
         Rectangle r = new Rectangle();
         r.length = 4.5;
         r.width = 3.5;
         r.Display();
         Console.ReadLine();
      }
   }
}

私有访问说明符

私有访问说明符允许类向其他函数和对象隐藏其成员变量和成员函数。只有同一类的函数才能访问其私有成员。

下面是一个例子 −

示例

using System;

namespace RectangleApplication {
   class Rectangle {
      private double length;
      private double width;

      public void Acceptdetails() {
         length = 10;
         width = 15;
      }

      public double GetArea() {
         return length * width;
      }

      public void Display() {
         Console.WriteLine("Length: {0}", length);
         Console.WriteLine("Width: {0}", width);
         Console.WriteLine("Area: {0}", GetArea());
      }
   }

   class ExecuteRectangle {
      static void Main(string[] args) {
         Rectangle r = new Rectangle();
         r.Acceptdetails();
         r.Display();
         Console.ReadLine();
      }
   }
}

相关文章