当前位置: 代码迷 >> C# >> 函数与类不执行,该如何解决
  详细解决方案

函数与类不执行,该如何解决

热度:394   发布时间:2016-05-05 02:50:43.0
函数与类不执行
  //声明类
    class Program
    {
        //静态方法的声明
        public static string Country()
        {
            string strCountry = "静态方法调用";
            return strCountry;
        }

        //非静态方法声明
        public string Country2()
        {
            string strCountry2 = "非静态方法调用";
            return strCountry2;
        }

        //非静态方法声明
        public string CountryAdd()
        {
            //创建对象
            Program1 pro= new Program1();
            string strField = pro.Str() + this.Country2();
            return strField;

        }
    }

    class Program1
    {
        static void Main(string[] args)
        {
            Console.WriteLine(Program.Country().ToString());
         
            //创建一个program 类的对象program2
            Program program2 = new Program();
            Console.WriteLine(program2.CountryAdd().ToString());
          Console.Read();


        }

        public string Str()
        {
            string str = "zheshi yige ";
            return str;
        }



       
       
      
    }

    class program3
    {
        static void Main2(string[] args)
        {
            program4 d = new program4();
            d.OutMethod();
        }
    }
}
各位看看 为什么调用不到program3里面的d.OutMethod>?执行不了
------解决思路----------------------
程序只认Main这个入口方法
static void Main(string[] args)
        {
            Console.WriteLine(Program.Country().ToString());
         
            //创建一个program 类的对象program2
            Program program2 = new Program();
            Console.WriteLine(program2.CountryAdd().ToString());
          Console.Read();
        }

你这里哪有调用什么progrma3的方法,你以为定义个static void Main2(string[] args)也会自动执行?它只会被当成一个普通的方法,需要人为调用
------解决思路----------------------
啥代码,乱糟糟的
我都没找到入口函数在哪里.不要告诉我Program1里的就是

你在这里调用program2.CountryAdd()
而在CountryAdd里又重新实例化了Program1

这不变成无限递归调用了??

而且根本也没有任何地方会调用program3,更没有program4
不要以为函数名起名叫Main2,它就是另一个入口函数了
  相关解决方案