C#比较私有静态和公共静态方法

时间:2010-12-10 04:47:27

标签: c#

在C#中,标记为public static的方法与标记为private static的方法之间有何区别?

他们是如何分配和访问的?

3 个答案:

答案 0 :(得分:8)

私有静态方法只能在其定义的类中访问。公共静态方法可以在类外部访问。

public class MyClass
{ 
    private static void MyPrivateMethod()
    {
        // do stuff
    }

    public static void MyPublicMethod()
    {
        // do stuff
    }
}

public class SomeOtherClass
{
    static void main(string[] args)
    {
         MyClass.MyPrivateMethod(); // invalid - this method is not visible

         MyClass.MyPublicMethod(); // valid - this method is public, thus visible
    }
}

就内存分配而言,请参见此处:

Where are methods stored in memory?

答案 1 :(得分:1)

私有静态方法只能由该类中的其他方法访问。 公共静态方法在访问方面几乎是全局的。

答案 2 :(得分:0)

静态方法在类级别应用,即不需要对象访问它们。公共和私人方法之间的唯一区别是可访问性。

  • 私有方法仅对该类中的其他方法可见。
  • 公共方法对任何其他类都可见。

    静态方法可以通过静态和非静态方法访问。