【总结】初识C#变量

来源:互联网 发布:mac常用软件2017 编辑:程序博客网 时间:2024/06/05 14:19

前言:

   从学习VB语言开始就觉得变量真是个神奇的东西,可以存储数据,传递信息,我们想到的想不到的地方都能用到变量。仿佛是人体内的血液,只要我们有生命,无论干什么都用的到。小二,先来张导图看看它的组成元素。

 

   这其中前三种变量返回单一类型的值,四到六返回多种类型的值,最后一个局部变量,真的是萌萌哒呢,都不带跟前面六中用类似的修饰符的。

第一,静态变量(static variable)

   用static修饰符声明的字段叫做静态变量。静态变量在执行之前就存在了,比如我们在CS中新建一个控制台应用程序项目时,自动生成一个有static的主函数,在关联的应用程序域终止时为止,即在不用这个函数的时候终止。静态变量的初始值是变量类型的默认值。比如,我们声明变量 a

   int a; 

   这时候不给a赋值,那么此时,a的值为整型类数值的默认值0;

第二,实例变量(instance variable)

   不用static修饰符声明的字段叫做实例变量。实例变量用来被其他函数引用,所以在创建该类的新实例时开始存在,在所有对该实例的引用都已终止,并且已执行了该实例的析构函数(若有)时终止。
   静态变量和实例变量的区别在于:静态变量是所有对象共有,其中一个对象将它值改变,其他对象得到的就是改变后的结果;而实例变量则属对象私有,某一个对象将其值改变,不影响其他对象;

第三,数组元素(array element)

   数组元素是一个很好的存储空间,通常我们需要操作的不是一两个数,而是成百上千的数。我们不能在每次有新的元素时就手动去声明变量,所以,数组变量应运而生。数组的元素在创建数组实例时开始存在,在没有对该数组实例的引用时停止存在。

第四,值参数value parameters

   未用ref或out修饰符声明的参数为值参数;
   把一个值传递给函数使用,函数中此变量的任何修改都不改变函数调用中制定的参数;

第五,引用参数reference parameters

   用ref修饰符声明的参数称为引用参数;
   函数处理的变量与函数调用中的使用的变量相同,而不仅仅是值相同的变量。因此对变量进行的任何修改都会影响到用作参数的变量值。

第六,输出参数output parameters

   用out修饰符声明的参数称为输出参数;   
   在要求返回多个不同类型的值时,用数组难免麻烦,所以这里出来了out参数和ref参数;如果方法的参数用out修饰了,在外面可以不给这个参数赋值,但是在方法里必须给参数进行赋值;
   而ref在用的时候必须在方法外面给变量赋初值,在方法里可以不赋值。out可以把方法里的值传出去,ref既可以把值传到方法外,也可以把值传到方法里。

第七,局部变量(Local variables)

   局部变量指在程序中只在特定过程或函数中可以访问的变量。局部变量是相对于全局变量而言的。在C++、C#、Ruby这些面向对象语言中,一般只使用局部变量。面向对象编程是现在普遍采用的是软件开发方法,因此无需考虑是局部变量还是全局变量,说到变量,往往都是局部变量。

   在C#中,因为局部变量只能在定义它的方法内部使用,所以局部变量没有访问权限修饰符,不能用public、private和protected来修饰,而是用final修饰,且先定义后使用。

最后,写完这篇博文有些许感想。

   第一,总结要及时;

   第二,总结要结合实例才更容易理解;

   第三,“没有好与不好,只有学的多与不多。

   以上三点与读者共勉。




1 0
原创粉丝点击