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查询符 ...
随机推荐
- 应用反射写的tostring方法
应用反射写的tostring方法 应用反射写的tostring方法,方便以后查询 代码 package com.chzhao.reflecttest; import java.lang.reflect ...
- SOP、DIP、PLCC、TQFP、PQFP、TSOP、BGA封装解释
1. SOP封装SOP是英文Small Outline Package的缩写,即小外形封装.SOP封装技术由1968-1969年菲利浦公司开发成功,以后逐渐派生出SOJ(J型引脚小外形封装).TSOP ...
- [iOS 多线程 & 网络 - 2.11] - ASI框架上传文件
A.ASI的上传功能基本使用 1.实现步骤 (1)创建请求 使用ASIFormDataRequest (2)设置上传文件路径 (3)发送请求 2.上传相册相片 UIImagePickerCon ...
- Linux(Centos)全自动异地备份数据(WEB+Mysql)
文章开始之前,先问下各位站长一个问题:什么东西对于站长是十分重要的?其实对于站长而言,很多东西都是很重要的.但我们现在排除外在因素,把范围缩小到网站系统本身,哪些是非常重要的呢?网站数据就是其中之一了 ...
- CodeForces 548B Mike and Fun (模拟)
题意:给定一个n*m的矩阵,都是01矩阵,然后每次一个询问,改变一个格的值,然后问你最大有数是多少. 析:就是按他说的模拟,要预处理,只要把每行的最大值记下来,当改变时,再更新这一行的最大值. 代码如 ...
- time_t转换为DateTime
最近解析文华财经的日线数据. 取得的第一个字段是日期,为time_t格式(long)的. 因为是用C#来写解析程序,所以要转换为DateTime的. time_t是世界时间,要转换为本地时间,所以要加 ...
- status pending状态
开发采用ssh,注解的方式,事物也application.xml配置了,但是在业务层没有使用@Transactional造成浏览器一直处于status pending状态,为什么没有使用@Transa ...
- Winform开发框架之权限管理系统
本文章转载:http://www.cnblogs.com/wuhuacong/archive/2011/05/08/2040620.html 至此,权限管理模块介绍已经完毕,下面给出一个调用例子Dem ...
- 【转】web测试内容及工具经典总结
基于Web的系统测试在基于Web的系统开发中,如果缺乏严格的过程,我们在开发.发布.实施和维护Web的过程中,可能就会碰到一些严重的问题,失败的可能性很大.而且,随着基于Web的系统变得越来越复杂,一 ...
- hdu 5534 Partial Tree 背包DP
Partial Tree Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid= ...