C#关键字详解第四节
char: 位 Unicode 字符
char在C#中与C语言不同,他表示的是16位无符号进制的数,在计算机中他是被用来存储字符但是他只能用来存 储一个文字,与string不同string可以存储多个文字或字符,char可以隐式转换成其他类型比如int,string等 但是他不能由其他类型隐式转换过来!他代表字符类型,属于值类型,在C#中表示char str='A'(注意!char 类型只能使用单引号去赋值使用),当然这属于基本类型,而且工作中使用很少,所以不多研究,只需要知道 有这个玩意就行了! checked与unchecked:进行溢出检查
这个家伙可是个大家伙!别看他只是个检查功能,但是他所运用的场景往往是有些参加工作的程序员都不知道 的!在工作中大家直接一个数值类型的赋值给一个一个int变量,这样的场景不少见而且是很多初学者很容易烦 的错!他们往往不考虑这个东西的最大值可以承受多少!比如一个int类型,int类型有一个属性是maxvalue, 当你用maxvalue+1赋值给一个新int变量时,你会发现你的代码出错了,这个不是结构错误,我称它为成员膨胀 !还有一种情况是值类型赋值不会报错但是却会计算错误!仔细检查发现后也不是结构错误,这就是成员膨胀 的另一种体现,因为在代码运算中默认是不会检查算数运算溢出的,你的中央处理器只知道计算他的值,却不 思考这个值是否正确!这个在测试中如果没有被发现的话也会制造数据出错而酿成大祸,所以为了安全起见微 软推出了checked与unchecked这两个关键字,他们可以用来检测在数值计算中的逻辑错误和运算错误!下面看 个例子!
int a = int.MaxValue;
int b=checked(int.MaxValue + );
Console.WriteLine(a);
Console.WriteLine(b); a的值是: 这是int最大值但是我在使用checked是他会提示运算在编译时溢出,这个就避免了我们 因为数值最大值的溢出导致数据错误,有些人说checked是检查了报错,那我用unchecked呢?此处我也试试了 这个用法:
int a = int.MaxValue;
int b=unchecked(int.MaxValue + );
Console.WriteLine(a);
Console.WriteLine(b); 运行可以通过,但是我打印的时候却发现b的值是-,而且他比a的值多一个负号和一个1,这就是溢 出的危险!虽然可以运行但是他所带来的后果绝对是恐怖的!所以以后在赋值的时候要记得什么时候需要用到 溢出检查!或者在项目的属性中点开生成点高级然后勾选溢出检查!这样就可以避免成员膨胀了! class:类
如果你C#学的可以了,准备接触面向对象了,那么类是你学习的第一个接触最重要的关键字,他承载了所有事 物与物体的基本,可以说他是面向对象编程中最基本最不可或缺的构造单位!他实现了万物皆对象的这个说法 !让代码从此丰富多彩!类他是一个数据结构也是一个容器,他有很多成员:字段,属性,方法等7大元素! 成员也分静态与实例成员,这里不过多介绍,因为面向对象的思想一两句话是说不完的,类支持封装、继承、 多态三要素!同时它的成员也包含这三要素,他的访问性是多重的,有public或internal等等,这些都是组成 类(对象)的基本结构!类成员访问时的标识符是“.”(没错就是一个点)操作符!
public(访问修饰符) class(此处是类型) Class1(类名称)//类的基本结构
{
//类成员就在这里!
} 关于类后期介绍面向对象的时候会着重讲解! 今天的关键字介绍到此结束(/),每天的基础巩固就是你成长的一大步!
C#关键字详解第四节的更多相关文章
- C#关键字详解第五节
最近有点忙于追剧<人民的名义>所以并未及时更新,所以大家理解理解,哈哈,这部剧很不错!推荐大家去 看看!下面我们继续C#关键字解释! const:常量 一般我们说常量都是以PI(3.14) ...
- C#关键字详解第六节
3.28 日志记录:前段时间参加技能大赛,所以未更新博客,特此补上,第一次写博客,希望自己认真下去,努力,天道酬勤! 比赛给我的感悟很深!古语云:山外有山,强中自有强中手! do:执行语句 说do之前 ...
- C#关键字详解第二节
base:基类 在有些书中base的解释为表示父类,没错,base可以表示父类,但我更想理解成基类,因为更原始更具象,既 然是类,那么他就符合面向对象的设计规则和特点,我们知道面向对象的三个特点是封装 ...
- OutputCache属性详解(四)— SqlDependency
目录 OutputCache概念学习 OutputCache属性详解(一) OutputCache属性详解(二) OutputCache属性详解(三) OutputCache属性详解(四)— SqlD ...
- python关键字详解
今天依旧在啃:<笨方法学python>,其中习题37是复习各种关键字.我本想百度一下记一下就ok了,但是百度出来第一个就Hongten的博客.我才意识到我也有博客,我应该学习他,把这些积累 ...
- spring事务详解(四)测试验证
系列目录 spring事务详解(一)初探事务 spring事务详解(二)简单样例 spring事务详解(三)源码详解 spring事务详解(四)测试验证 spring事务详解(五)总结提高 一.引子 ...
- java关键字详解----static
Java Static关键字详解 提起static关键字,相信大家绝对不会陌生,但是,想要完全说明白,猛的一想,发现自己好像又说不太明白... ...比方说,昨天被一个同学问起的时候... ... ...
- java关键字(详解)
目录 1. 基本类型 1) boolean 布尔型 2) byte 字节型 3) char 字符型 4) double 双精度 5) float 浮点 6) int 整型 7) long 长整型 8) ...
- RocketMQ详解(四)核心设计原理
专题目录 RocketMQ详解(一)原理概览 RocketMQ详解(二)安装使用详解 RocketMQ详解(三)启动运行原理 RocketMQ详解(四)核心设计原理 RocketMQ详解(五)总结提高 ...
随机推荐
- win7下远程登录ubuntu mysql
网络上找了很久的一个办法,不然老是远程访问不了linux mysql. 原先一直用root登录,进不了,新建一个root1倒是可以了. 安装好mysql后,按以下步骤: 1.将vim /etc/mys ...
- Mybatis 代码自动生成(generatorConfig.xml配置)
博客推荐: Mybatis最入门---代码自动生成(generatorConfig.xml配置) MyBatis Generator generatorConfig.xml配置详解 pom.xml&l ...
- php排序函数测试
1.sort,asort,arsort函数 十万个数的数组排序,用了0.17秒 $starttime=explode(' ',microtime());;for ($i=0; $i <10000 ...
- Gym - 101982A 2018-2019 ACM-ICPC Pacific Northwest Regional Contest (Div. 1) A. Exam
题面 题意:你和朋友一起做了n道判断题,现在你知道你们两的答案,也知道你朋友对了k个,问你至少对了几个 题解:假设你和朋友n个答案都一样,那你是不是也对了k个,假设你和朋友有1个答案不一样,是不是,你 ...
- ACM_二维数组的查找
二维数组的查找 Time Limit: 2000/1000ms (Java/Others) Problem Description: 给定一个n*m的二维数组,保证a[i][j] < a[i+1 ...
- 题解报告:hdu 1863 畅通工程
Problem Description 省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可).经过调查评估,得到的统计表中列出了有可 ...
- drupal-使用hook_preprocess_field在paragraph的accordion中添加自定义数据
描述:我的accordion类型原先只有两个字段,分别是title和content.显示在页面上会默认隐藏其内容,点击“+”会显示内容.然而现在有一个新需求,就是加一个开关使编辑内容者可以选择默认“展 ...
- HTTP05--HTML常用知识
一.URL地址含义 需要搞清URL和URI的差别,以及QueryString的含义. 二.GET和POST的区别 详细介绍可参考文章:http://zengrong.net/post/1802.htm ...
- R 连接数据库长数字被科学计数法解决方法
数据库中的订单编号
- JS——Boolean(逻辑)对象
Boolean(逻辑)对象用于将非逻辑值转换为逻辑值(true 或者 false). 创建 Boolean 对象的语法: new Boolean(value); //构造函数 Boolean(valu ...