当前位置:编程学习 > C#/ASP.NET >>

main方法中为什么可以包含非静态数据

class Program
    {
        static void Main(string[] args)
        {
            cat c = new cat();
            c.eat();
            Console.ReadLine();
        }
    }

    public class Animal
    {
        public virtual void eat()
        {
            Console.WriteLine("动物不能吃东西");
        }
    }

    public class cat : Animal
    {
        public override void eat()
        {
            Console.WriteLine("我吃鱼");
        }
    }
书中说静态成员只能操作其他静态成员,main()是静态方法,cat不是,为什么cat就能在main()方法里运行并且编译通过了 --------------------编程问答-------------------- cat是类,不是方法。。。 --------------------编程问答-------------------- cat是一个类 啊 --------------------编程问答--------------------
任何非静态成员的访问都需要实例... 

静态成员访问非静态成员那需要实例..如果没有实例是无法访问的.

例如
class Program 
    { 
        static void Main(string[] args) 
        { 
           
        } 

        public int a=0;
    } 

那在Main访问a 必须使用  Projram _Projram =new Projram();  然后访问_Projram.a

--------------------编程问答-------------------- 楼上均正确!鉴定完毕~~ --------------------编程问答-------------------- 静态方法本来就可以访问类的实例~~~
--------------------编程问答-------------------- 参考楼上 --------------------编程问答-------------------- 以前没注意 跟着学习
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,