c#语法笔记
书写代码需要注意的地方:
1、代码中出现的所有标点都是英文半角 shift键快速切换中文半角和英文半角
shift+空格 切换全角/半角
2、在c#代码中,每行代码的结束,我们都以分号结束,注意:这个分号也是英文半角的分号。
命名规则:
****首先要保证的就是这个变量的名字要有意义。
1 现阶段给变量起名字的时候都以字母开头
2 后面可以跟任意“字母”、数字、下划线.
注意:
1)你起的变量名不要与c#系统中的关键字重复.
2)在c#中,大小写是敏感的. HTML不敏感
3)同一个变量名不允许重复定义(先这么认为,不严谨)
命名规范:
1、Camel 骆驼命名规范。要求变量名首单词的首字母要小写,其余每个单词的首字母要大写。
多用于给变量命名。
2、Pascal 命名规范:要求每个单词的首字母都要大写,其余字母小写。多用于给类或者方法命名。
HighSchoolStudent
highSchoolStudent
占位符{0}...
Console.WriteLine("{0},{1}",变量1,变量2...);
使用方法:先挖个坑,再填个坑。
使用占位符需要注意的地方:
1、你挖了几个坑,就应该填几个坑,如果你多填了,没效果。
如果你少填了,抛异常。
2、输出顺序:按照挖坑的顺序输出。
输出保留几位小数:{0:0.00} //输出保留两位小数
转义字符和@符号:
转义符指的就是一个'\'+一个特殊的字符,组成了一个具有特殊意义的字符。
\n:表示换行
\":表示一个英文半角的双引号
\t:表示一个tab键的空格
\b:表示一个退格键,放到字符串的两边没有效果。
\r\n:windows操作系统不认识\n,只认识\r\n
\\:表示一个\
@符号
1、取消\在字符串中的转义作用,使其单纯的表示为一个'\'
2、将字符串按照编辑的原格式输出
类型转换:
前提条件:类型兼容、要求等号两边参与运算的操作数类型一致 比如:int double都是数字类型
自动类型转换(隐式转换):小的转大的(指取值范围)int--->double
强制类型转换(显式转换):大的转小的(指取值范围)double--->int int x = (int)y;
如果两个变量的类型不兼容比如string 和 int
需要使用Convert.toInt32 //Convert.To对应的类型
另外一种写法:类型.Parse 或 类型.TryParse //int.Parse int.TryParse
/// C#文档注释:
作用:用来对类、方法等进行解释说明。
变量相关:
局部变量:一般在方法内定义的变量
使用规则:1、先声明或定义 2、后赋值或初始化 3、再使用(输出或参与运算)
decimal:主要用于财政金融方面,精度要求比较高就是小数点后面位数比较长银行、会计部门用得比较多。值后面加一个字母m表示money。
char: 最多、最少只能也必须有一个字符,不能存储空,可以存储一个中文字因为采用Unicode编码 16位 一中文占两字节(一字节8位)
运算符:
++、-- //前置、后置一元运算符 (需要几个操作数参与运算才能完成的叫做几元运算符,像++、--只需要一个操作数)
区别:单用体现不出来,参与赋值就体现出来了。但最终结果都会给自己自增1
int x = ++number //number先自增1,再赋值给左边的变量x。
int x = number++ //number先把自己原样赋值给左边的变量x,再自增1。
逻辑运算符:&&、||、!(俗称短路与、短路或)
一般用这三个比较多,而用&、|按位与、或的比较少,为什么:因为效率比较高当然操作二进制方面按位运算有优势。
int x = 5; bool result = (5 < 3) && (x++ > 2) 结果:result = false,x=5因为前半部分为假就可以确定整个表达式的结果,后半部分不再执行。
int x = 5; bool result = (5 > 3) || (x++ > 2) 结果:result = true, x=5原因同上。
异常捕获try和catch之间不能有其他的代码
if else if 和 switch case
共同点:都可以实现多条件分支判断
不同点:if else if多条件区间 switch case多条件定值 一般if else if可以实现 switch case的功能反之则不一定
break
1、可以跳出switch-case结构。
2、可以跳出当前循环。
一般不单独使用,而是跟着if判断一起使用,表示,当满足某些条件的时候,就不再循环了。
封装:
二个意义:第一是把数据和处理数据的方法同时定义在类中、第二是用访问权限控制符使数据隐蔽。
构造函数:
定义:和类名相同,没有返回值,默认不带参数,可以自定义带参数构造函数。
调用:每当用new关键字生成类的实例(对象)的时候,会自动调用类的默认无参数的构造函数。
作用:完成一些初始化工作,例如对数据成员初始化。
析构函数:
变量和类的对象都有生命周期,生命周期结束,这些变量和对象就要被撤销。类的对象被撤销时,将自动调用析构函数。
定义:名字为~类名,无返回类型,也无参数。
调用:不能显式调用,它是被垃圾收集器撤销不被使用的对象时自动调用的。
作用:一些善后工作可放在析构函数中完成。
重载Overload:(构造函数、通用函数)
定义:同一个类中的函数,如果函数名相同,而参数类型和个数不同,认为是不同的函数,仅返回值不同,不能看作不同的函数。
调用:根据生成类的对象方法不同,调用不同的构造函数。
作用:提高程序的可读性,用更少的代码量做更多的事,为“多态”特性打下基础。
注:由于析构函数无参数,因此,析构函数不能重载。
c#语法笔记的更多相关文章
- SQL基础语法笔记教程整理
PS:本文适用SQL Server2008语法. 一.关系型数据库和SQL 实际上准确的讲,SQL是一门语言,而不是一个数据库. 什么是SQL呢?简而言之,SQL就是维护和使用关系型数据库中的的数据的 ...
- C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表 | IT宅.com
原文:C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表 | IT宅.com C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表 | I ...
- SQL 基础语法笔记教程整理
最近从图书馆借了本介绍 SQL 的书,打算复习一下基本语法,记录一下笔记,整理一下思路,以备日后复习之用. PS:本文适用 SQL Server2008 语法. 首先,附一个发现的 MySQL 读书笔 ...
- [python] Pythonic语法笔记
Pythonic语法笔记 __new__ 在类实例化之前执行的,也就是在init之前执行,可以为这个类写操作.接受的参数不是self而是cls.只有在new方法里返回类才会执行init操作,需要返回父 ...
- SQL Server 常用高级语法笔记
自从用了EF后很少写sql和存储过程了,今天需要写个比较复杂的报告,翻出了之前的笔记做参考,感觉这个笔记还是很有用的,因此发出来和园友分享. 1.case...end (具体的值)case后面有值,相 ...
- C#语言不常用语法笔记
只看过3天C#语法书,了解个大概,与C++等不同之处,或者看开源遇到一些奇异用法,记录一下,脑子不够用的情况下,还是记笔记靠谱. ==================== 顺便吐槽下,这年头得会各种编 ...
- solr使用语法笔记
http://127.0.0.1:8095/shangbiao_sale/select?sort=id+desc&fq=&wt=json&json.nl=map&q=s ...
- Java语法笔记
目录 知识点 不支持 恶心事 与C#的区别 组件 学习资料 母版页 知识点 类 静态方法,即可以在类上被调用,也可以在实例对象上被调用. Java类 先执行静态构造函数,再执行静态方法或静态字段,所以 ...
- Java基本语法笔记
1. 基本格式: public class HelloWprdApp { public static void main(String[] args) { // TODO Auto-ge ...
- Solr常用查询语法笔记
1.常用查询 q - 查询字符串,这个是必须的.如果查询所有*:* ,根据指定字段查询(Name:张三 AND Address:北京) fq - (filter query)过虑查询,作用:在q查询符 ...
随机推荐
- HDU 2045 不容易系列之(3)—— LELE的RPG难题 (递推)
题意:略. 析:首先是假设前n-2个已经放好了,那么放第 n 个时,先考虑一下第 n-1 放的是什么,那么有两种情况. 如果n-1放的是和第1个一样的,那么第 n 个就可以在n-2的基础上放2个,也就 ...
- Windows xp下IDT Hook和GDT的学习
一.前言 对于IDT第一次的认知是int 2e ,在系统调用的时候原来R3进入R0的方式就是通过int 2e自陷进入内核,然后进入KiSystemService函数,在根据系统服务调用号调用系统服 ...
- TypeScript学习笔记(三):类
类 在TypeScript中,类似于C#的结构,即一个文件中可以存在多个类,且文件名可以任意取,我们先看一个简单的类的示例. class Person { private name: string; ...
- code::blocks编译多文件 没有定义的引用
code::blocks是一款据说灰常强大的IDE,以前虽然也经常使用,但一没用过高度功能,二来没用它写过工程性的东西,简单点说就是一个以上的源文件并且加入其他非标准的头文件,今天想做一个多文件的语法 ...
- [前端JS学习笔记]JavaScript 数组
一.JavaScript数组的奇葩 大多数语言会要求数组的元素是同个类型, 但是JavaScript允许数组元素为多种类型. var arr = ["羽毛球", 666, {&qu ...
- MFC视图切换大全总结
单纯视图之间的切换 单文档多视图切换是我在学习MFC中遇到的一个老大难问题,在今天总算是一一破解了.我觉得视图切换分为三个等级,第一是在未切分窗格的情况下切换视图类:第二是在分割窗格的一个窗格内实行视 ...
- VHD_Update_mount-vhd
###################功能说明########################该脚本用来对离线VHD文件更新,导入系统补丁############################### ...
- 目录启动CXF启动报告LinkageError异常以及Java的endorsed机制
本文纯属个人见解,是对前面学习的总结,如有描述不正确的地方还请高手指正~ Exception in thread "main" java.lang.LinkageError: JA ...
- Displaying Alerts with UIAlertView
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Alert" message:@"You've ...
- hdu 5428 The Factor 分解质因数
The Factor Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://bestcoder.hdu.edu.cn/contests/contest ...