成员变量初始化的步骤

.NET加载类时:(在静态存储区,为静态变量分配存储空间同时赋予缺省值; 下一步执行且仅执行一次1,2 ,对变量初始化)

1,先使用 = 为静态成员变量赋值,从上到下,依次赋值,没有 = 号的,缺省值;

2,执行静态构造函数,为静态成员变量赋值;

当使用类实例化时:

3,先使用 = 为实例成员变量赋值,从上到下,依次赋值,没有 = 号的,缺省值;

4,执行实例构造函数,为实例成员变量赋值;

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 
 7 namespace 初始化
 8 {
 9     class Program
10     {
11         private string c1 = "我是=赋值的实例变量c1";
12         private string c2 = "我是=赋值的实例变量c2";
13 
14         private static string sc1 = "我是=赋值的静态变量sc1";
15         private static string sc2 = "我是=赋值的静态变量sc2";
16 
17 
18         public Program()
19         {
20             Console.WriteLine(sc1);
21             Console.WriteLine(sc2);
22 
23             Console.WriteLine(c2);
24             Console.WriteLine(c1);
25             c1 = "我是构造函数赋值的实例变量c1";
26             c2 = "我是构造函数赋值的实例变量c2";
27             Console.WriteLine(c2);
28             Console.WriteLine(c1);
29         }
30 
31         static Program()
32         {
33             Console.WriteLine(sc1);
34             Console.WriteLine(sc2);
35             sc1 = "我是静态构造函数赋值的静态变量c1";
36             sc2 = "我是静态构造函数赋值的静态变量c2";
37             Console.WriteLine(sc1);
38             Console.WriteLine(sc2);
39         }
40 
41         static void Main(string[] args)
42         {
43             Program p = new Program();
44             Console.Read();
45         }
46     }
47 }

输出结果:

 

转载于:https://www.cnblogs.com/maoshuyi/p/9744028.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值