1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > C#学习日记20—-static静态变量 与 常量

C#学习日记20—-static静态变量 与 常量

时间:2021-04-04 10:34:36

相关推荐

C#学习日记20—-static静态变量 与 常量

后端开发|C#.Net教程

C#,static,静态变量

后端开发-C#.Net教程

在上一篇 委托(Delegate)类型中我定义public方法的时候使用了 static 关键字,导致后来无法通过 对象.方法名 的形式访问此方法,这一篇我们就具体学习下 static 静态变量。

网页对战源码,vscode关闭项目不在,ubuntu注销更换,生产环境tomcat日志,天气 爬虫,php 多表单,福清公司seo哪家好,php 网站小偷,儿童艺术照模板免费下载lzw

变量:

二维码设备管理系统源码,vscode每次都更新,削减ubuntu桌面,tomcat用到的端口,易语言怎么做sqlite,爬虫 破坏计算机信息系统罪,支付宝验证失败 php,墨猴SEO排名公司,php统计网站访问量,dreamweaver网页制作模板下载lzw

在学习static静态变量之前,我们还是有必要来了解 变量 的意义。程序要对数据进行读、写、运算等操作,当需要保存特定的值或结果的时候就需要用到变量,在用户看来,变量是用来描述一条信息的名称,在变量中可以储存各种类型的信息,比如:人的姓名、车票的价格等等;在计算机看来,变量代表存储地址,变量是什么类型,变量中存储的数值就是什么类型。使用变量的一条重要原则就是 :变量必须先定义后使用。

59校园系统源码,vscode怎么使用sc,ubuntu 修改eth,tomcat23333,sqlite数据库加密解密,爬虫如何抓取app里的图片,php 循环终止,林云seo免费ssrr,相册管理网站模板,网页礼花,dede白色房产模板lzw

在C# 中变量的定义与使用规则与C/C++类似,这里就不多说了,(所以学好C还是挺重要的^_^)

static静态变量:

带有 static 修饰符声明的变量称为静态变量,一旦静态变量所属的类被装载直到包含该类的程序运行结束时他将一直存在。static 的主要性质有两个:

1.隐藏:

在类里定义的静态方法或静态变量,属于类本身,而不属于那个类的一个对象。要想调用一个被定义为static的方法,必须在它前面加上这个类的名称。(即时是public访问修饰也不行,这也是上一篇末尾的原因) 实例方法必须通过类的实例来使用。实例方法可以使用类的非静态成员,也可以使用类的静态成员。

访问规则:

静态方法只能访问类的静态成员,不能访问类的非静态成员;

非静态方法可以访问类的静态成员,也可以访问类的非静态成员;

静态方法不能使用实例来调用,只能使用类名来调用。

比如下面的例子:

class person{ public static int i; //定义一个静态变量i 默认值是0 public int k=0; //定义一个非静态变量 k; public static int sbu() // 定义一个静态方法{ i = 9; //成功对静态变量赋值 k = 5; //出错了,无法访问非静态变量 return k; //综上静态方法只能访问静态变量 }public int Add() //定义一个实例方法{ i = 9; //对静态变量赋值没有问题 k = 5; //对非静态变量赋值也没问题 return i; //综上实例方法能够访问所有类型变量} }

我们实例化一个person一个对象对方法进行访问:

static void Main(string[] args){ person per = new person(); //实例化一个对象per int i = per.i; //出错了,per访问不了类里的静态变量 int k = per.k; //没有问题 per.sbu(); //出错了,per访问不了静态方法 person.sbu(); //成功调用 per.Add(); //成功调用 person.Add(); //出错了,person访问不了实例方法 }

2.保持变量内容的持久:

存储在静态数据区的变量会在程序刚开始运行时就完成初始化,也是唯一的一次初始化。共有两种变量存储在静态存储区:全局变量和static变量,只不过和全局变量比起来,static可以控制变量的可见范围,说到底static还是用来隐藏的。

写个例子就知道了(这次我用C++写了)C#不允许在方法中使用static:

#include using namespace std; int main() {for (int i=0;i<4;i++){ static int k =0; //定义一个静态变量并赋值为0 k++; cout<<k<<endl; //输出} return 0; }

结果:

如果上面的代码中我们去掉 static 此时k=0;变成了非静态变量,结果只会出现一个数字1;

常量:

常量就是其质固定不变的量,从数据类型来看常量的类型可以是任意一种值类型或引用类型。一个常量的声明就是声明程序中要用到的常量名称和他的值。(用法也与C类似)但是在C#中常量一旦定义无法在改变它的值

using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace demo {class Program{const int S = 9; //定义一个常量S并赋值static void Main(string[] args){ S += 4; //出错了,常量一旦定义就不能改变常量的值 Console.WriteLine(S);}} }

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。