代码之家  ›  专栏  ›  技术社区  ›  Danny Beckett

这个类中的静态bool和私有静态bool之间有什么区别?

  •  1
  • Danny Beckett  · 技术社区  · 13 年前

    考虑一下 OutputToConsole 中的布尔值 class 在下面

    以下两行代码之间有什么区别吗?

    private static bool OutputToConsole = true;
    
    static bool OutputToConsole = true;
    

    两者的功能似乎相同。


    class Debug
    {
        private static bool OutputToConsole = true;
    
        public static void Log(string Type, string URL, StringBuilder Parameters)
        {
            Write(Type + ":" + new string(' ', 9 - Type.Length) + URL + " { " +
                Parameters.ToString() + " }");
        }
    
        public static void Log(string Data)
        {
            Write("Response: " + Data);
        }
    
        private static void Write(string Output)
        {
            Trace.WriteLine(Output);
            if(OutputToConsole) Console.WriteLine(Output);
        }
    }
    
    2 回复  |  直到 13 年前
        1
  •  3
  •   Danny Beckett    13 年前

    类成员的默认访问修饰符为 private 在C#中,所以如果你不写任何东西(比如 私有的 , public , protected internal ),就像你写的那样 私有的 .

        2
  •  2
  •   Igor Ralic    13 年前

    没有区别。如果没有显式设置访问修饰符,则默认值为private。

    推荐文章