我想请问怎么理解这两句话:
1,什么叫做“Main方法为静态的,因此Main方法中不能直接访问Main所在类的实例方法和实例成员”?
2,什么叫做“静态构造函数在运行库加载类时执行”?请大神帮忙解释下。谢谢

解决方案 »

  1.   

    楼主可以看下static的讲解
    static方法里不能直接访问实例成员,实例就是需要你new出来的。
      

  2.   

    1,什么叫做“Main方法为静态的,因此Main方法中不能直接访问Main所在类的实例方法和实例成员”?class Program
    {
        int x = 3;
        void foo() { ... }
        static void Main(string[] Args)
        {
            int i = x; // error Main方法中不能直接访问Main所在类的实例成员
              foo(); // error Main方法中不能直接访问Main所在类的实例方法
        }
    }2,什么叫做“静态构造函数在运行库加载类时执行”?
    class Program
    {
        public static Program() { Console.WriteLine("a"); }
        
        static void Main(string[] Args)
        {
            Console.WriteLine("b");
        }
    }
    输出
    a
    ba在Main之前执行。
      

  3.   

    关于问题2,如果要了解更多内容,去看CLR via C#。