C#中静态变量用法简要说明

本文详细解释了静态变量和私有变量之间的主要区别,包括它们如何在内存中分配空间的不同之处。此外还介绍了静态变量的访问方法,并提供了一个C#的例子来帮助理解。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

近来书本里面经常用到静态变量和静态方法,很多同学感觉迷糊,这里对其做一个简单说明。 首先,静态变量和私有变量的最主要的区别就在于:他们分配内存空间的方式不一样。 静态变量的内存是在程序开始执时变量就占用了内存,直到程序结束时变量才释放内存. 私有变量(局部变量)是在程序运行到该步的时候分配内存。所以,当离开了该私有变量的作用域的时候,私有变量的内存空间会被释放。例如在FOR循环里面定义变量出了循环结构就不能再使用,除非再定义一个。 所以:静态变量只的值只会初始化一次,后面每次访问,都是上次处理过的值,(即使是在一个函数内部)。私有变量每次都初始化。也就是说每次都开辟一个内存空间存储。 class test { static void Main(string[] args) { Console.WriteLine(sort.i); // C#中未赋初值的变量系统自动赋为0,所以输出结果为0;同时可以看到静态变量的访问方法(类名.静态变量名)。在外调用这个变量的方法是”类.变量名” sort.i = 10; Console.WriteLine(sort.i); //输出10 } } class sort { public static int i; public sort() { i = 3;// 在类内部访问静态变量时,直接用静态变量名即可,不用以(类名.静态变量名),这样的方式访问, } } 之所以有时声明为私有静态变量,是为了让它只初始化一次.这样节省了内存空间但又想让它在外部是不可访问的,这样利用私有这个访问限定符就搞定了. 私有静态:安全又节省空间. 例如书本第五章里面也是采用这样的方式: public class UserHelper { public static string loginId = ""; // 用户名 public static string loginType = ""; // 登录类型 } 通过这样的定义,在这个类后面的方法里面就可以使用同一个loginId和loginType,通过一些操作给这两个变量赋值就可以传递这个值到其它的窗体和类中,而不用在每一个事件里面重复定义这两个对像了!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值