为什么mian函数必须是static的

c#程序刚开始启动的时候都会有唯一一个入口函数main()函数,而非静态成员又称实例成员,必须作用于实例。在程序刚开始运行的时候,未建立任何实例,因此无法调用实例成员,包括非静态的Main方法。为了能够在程序的开始执行Main方法,必须将其声明为静态。 
顺便说明,在Main方法中调用的成员也必须是静态的,除非建立过相应的实例。 

例如:


namespace lover_P.Test { 

public class Test { 
public void InstanceMethod() {} // 实例成员(非静态) 
public static void StaticMethod {} // 类型成员(静态) 
public static void Main() { 
InstanceMethod(); // 错误!调用了实例成员,而此时并没有建立实例 
StaticMethod(); // 正确!可以调用静态成员 
Test SomeTest = new Test(); // 建立本类型的一个实例 
SomeTest.InstanceMethod(); // 再在这个实例上调用实例成员就对了 
SomeTest.StaticMethod(); // 附加一句,在实例上调用静态成员也是错误的! 


}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值