C#关键字详解第四节

char16 位 Unicode 字符
char在C#中与C语言不同,他表示的是16位无符号进制的数,在计算机中他是被用来存储字符但是他只能用来存


储一个文字,与string不同string可以存储多个文字或字符,char可以隐式转换成其他类型比如int,string等


但是他不能由其他类型隐式转换过来!他代表字符类型,属于值类型,在C#中表示char str='A'(注意!char


类型只能使用单引号去赋值使用),当然这属于基本类型,而且工作中使用很少,所以不多研究,只需要知道


有这个玩意就行了!

checkedunchecked:进行溢出检查
这个家伙可是个大家伙!别看他只是个检查功能,但是他所运用的场景往往是有些参加工作的程序员都不知道


的!在工作中大家直接一个数值类型的赋值给一个一个int变量,这样的场景不少见而且是很多初学者很容易烦


的错!他们往往不考虑这个东西的最大值可以承受多少!比如一个int类型,int类型有一个属性是maxvalue,


当你用maxvalue+1赋值给一个新int变量时,你会发现你的代码出错了,这个不是结构错误,我称它为成员膨胀


!还有一种情况是值类型赋值不会报错但是却会计算错误!仔细检查发现后也不是结构错误,这就是成员膨胀


的另一种体现,因为在代码运算中默认是不会检查算数运算溢出的,你的中央处理器只知道计算他的值,却不


思考这个值是否正确!这个在测试中如果没有被发现的话也会制造数据出错而酿成大祸,所以为了安全起见微


软推出了checked与unchecked这两个关键字,他们可以用来检测在数值计算中的逻辑错误和运算错误!下面看


个例子!
int a = int.MaxValue;
int b=checked(int.MaxValue + 1);         
Console.WriteLine(a);
Console.WriteLine(b);

a的值是:2147483647 这是int最大值但是我在使用checked是他会提示运算在编译时溢出,这个就避免了我们


因为数值最大值的溢出导致数据错误,有些人说checked是检查了报错,那我用unchecked呢?此处我也试试了


这个用法:
int a = int.MaxValue;
int b=unchecked(int.MaxValue + 1);         
Console.WriteLine(a);
Console.WriteLine(b);

运行可以通过,但是我打印的时候却发现b的值是-2147483648,而且他比a的值多一个负号和一个1,这就是溢


出的危险!虽然可以运行但是他所带来的后果绝对是恐怖的!所以以后在赋值的时候要记得什么时候需要用到


溢出检查!或者在项目的属性中点开生成点高级然后勾选溢出检查!这样就可以避免成员膨胀了!

class:类
如果你C#学的可以了,准备接触面向对象了,那么类是你学习的第一个接触最重要的关键字,他承载了所有事


物与物体的基本,可以说他是面向对象编程中最基本最不可或缺的构造单位!他实现了万物皆对象的这个说法


!让代码从此丰富多彩!类他是一个数据结构也是一个容器,他有很多成员:字段,属性,方法等7大元素!

成员也分静态与实例成员,这里不过多介绍,因为面向对象的思想一两句话是说不完的,类支持封装、继承、


多态三要素!同时它的成员也包含这三要素,他的访问性是多重的,有public或internal等等,这些都是组成


类(对象)的基本结构!类成员访问时的标识符是“.”(没错就是一个点)操作符!
public(访问修饰符) class(此处是类型) Class1(类名称)//类的基本结构
{
    //类成员就在这里!
}

关于类后期介绍面向对象的时候会着重讲解!

今天的关键字介绍到此结束(77/17),每天的基础巩固就是你成长的一大步!

猜你喜欢

转载自www.cnblogs.com/sandaman2019/p/10440911.html