以字符串数组作为参数 1 class Program 2 { 3 static int Main() 4 { 5 6 r

时间:2022-01-08 06:14:00

2018-01-15 22:10:59

 一、Main()要领的简介

1、独一性。一般情况下,一个C#可执行措施只有一个Main函数,作为措施入口。但是在某些情况(如单元测试中),措施拥有多个Main函数,,这个时候我们就需要通过命令行指定以哪个Main()要领作为措施的独一入口。

2、静态性。Main()要领通过static修饰,这个主要是让我们可以通过类名加要领的形式挪用Main()要领,使得我们不需要创建东西的实例(即new出该东西)而直接挪用Main函数。使用静态static修饰符的原因:

3、Main的参数。分析Main()要领的参数是一个字符串(string[] args),这个参数可以包罗任意数量的命令行输入参数。

4、Main函数的修饰符。一般不加修饰符,默认为private,但可以public修饰符,但编译器在编译时会设置为priavte。

二、Main()要领为什么使用static修饰

假设没有static关键字,那意味着需要用生成一个实例后才可以挪用这个Main要领,而Main要领是措施入口点,你没有进入Main要领,自然无法生成一个实例,既然没有实例,那就无法挪用Main函数,岂不矛盾?所以Main函数被设置为static。直接通过类名加要领的形式挪用Main()要领,使得我们不需要创建东西的实例(即new出该东西)而直接挪用Main函数。

三、Main()要领的四种形式

1、无返回值,以字符串数组作为参数

1 class Program 2 { 3 static void Main(string[] args) 4 { 5 } 6 }

2、无返回值,无参数

1 class Program 2 { 3 static void Main() 4 { 5 } 6 }

3、返回int类型数值,以字符串数组作为参数

1 class Program 2 { 3 static int Main() 4 { 5 6 return 0;//返回整数0(0:暗示没有呈现异常情况正常返回;其他值(非0),,暗示主函数执行过程中的异常情况。) 7 } 8 }

4、返回int类型数值,无参数

1 class Program 2 { 3 static int Main(string[] args) 4 { 5 return 0;//返回整数0(0:暗示没有呈现异常情况正常返回;其他值(非0),暗示主函数执行过程中的异常情况。) 6 } 7 }

四、Main()的参数string[] args的含义

args是用来措置惩罚惩罚命令行参数的。命令行参数,就是你运行这个措施的时候给它传的参数。它是可选项,不是必需的。具体使用如下:

1:编写如下措施

1 class Program 2 { 3 static void Main(string[] args) 4 { 5 foreach (string str in args) 6 { 7 Console.WriteLine("Main函数通报的参数args:{0}", str); 8 } 9 Console.ReadKey(); 10 } 11 }

2:编译完成该措施后,在Debug文件中找到该.exe文件,复制到桌面,再复制路径+文件名,然后在命令行模式下输入“C:\Users\dwa1124\Desktop\Test aa bb cc”。运行后我们发明:

以字符串数组作为参数 1 class Program 2 { 3 static int Main() 4 { 5 6 r