C#基础02
学习“传智播客视频基础”做的课堂笔记,您有幸读到,若其中有错误部分,请您务必指明。另外请给出您的宝贵建议,谢谢。
**************基础知识************
1:.net是一种平台【一种框架,一些编辑语言在其上面运行显示】,而c#是基于其上面的一种语言。
2:Winform应用程序开发是从.net平台上面开发的。也叫做桌面应用程序{窗口的形式,如操作系统}。
3:【ASP.NET】是用.net平台上面的语言进行开发的一种internet应用程序。
4:为什么现在微软的Window系统用户最多,这个问题源于系统{基于用户的方便操作,傻瓜式的操作。方便用户操作}
5:c(Client)/s(Server)应用程序(桌面应用程序的一种{连接服务器用于通信})
6:B(Browser)/S(Server):通过浏览器访问服务器,也叫网站(asp.net开发)。
7:【数据库】:用户安全的存贮数据,集中的管理操控数据。
8:【AJAX】网页特效的实现;
【IDE】集成开发环境;
【.net】是向下兼容的。
9:项目projest:表示一个程序。
解决方案.sln:是项目的集中管理。
10 Main页面

*****************学习两句话************
1:解决方案中可以包含多个项目,项目可以包含多个文件,文件就是我们写的程序。
2:程序中上面的几行代码是引用命名空间,还有就是声明一些特定的代码。
3:【c#程序的格式】
namespace命名空间
{
class定义类(在这里可以写类的继承)
{
static定义方法
{
张辉的程序
}
}
}
4: 重置开发环境【工具---导入与导出----重置所有】
5:解决方案的文件是以【.sln】结尾,可以包含多个项目;
项目文件是以【.csproj】结尾;
类文件是以【.cs】结尾;
6:写程序时要注意大小写,用骆驼命名法来书写;
多记些快捷键,以后方便工作;
7:bin文件夹中的Debug中存放生成的程序文件;
8:【生成解决方案】可以不用启动程序,但是查找出所写程序的错误之处。
9:c#中的输出【Console.writeline(“Hellow”);输出光标换行】
【Console.write(“Hellow”);输出光标不换行】
***************基础知识详解*************
1:可以从文件中新建项目,也可以从解决方案中新建项目,这样子就可以应用同一个解决方案。
2:项目启动项的设定【解决方案---属性------选择当前为启动项】
3:【卸载项目】可以设定在多个项目中不运行出错的项目,就将其卸载掉,之后在右键【添加项目】就出现项目了。
4:c#代码的注释(方便程序的阅读和理解)
一:单行注释【//...........】后面的语句就是注释;
二:多行注释【/........../】中间的语句为注释;
三: 文档注释【///后面自动生成注释格式的代码】在中间
进行注释;
5:【快捷键】
Backspace:删除光标前面的;
Delete:删除光标后面的;
Ctrl+z:撤销
6:可以折叠一段代码
{
#region
之间的代码可以折叠
#endregion
}
7:【.net】是一种多语言的平台(微软的平台上面),开发.net程序可以用多种语言,
【java】是一种语言多平台的(可在多种系统上面运行);
8:【.net平台】{FCL(.net Framework).CLR(公共语言运行时)【中间健】}在其操作系统上面运行。
9:ADO.NET访问数据库;CRL:解释执行语言,可以使操作系统识别。
10:【CLR公共语言运行时】----(CLS定义语法)
***************变量**************
1:【RAM】:称为内存,断电后存储的东西丢失;
一般说的存在内存中,指的是我们电脑上的磁盘;
2:变量代表着内存空间,通过变量可向内存“传”
“取”数据;
3:声明变量的语法格式
数据类型 变量名;【赋值】
Int A=100; 此句的含义是将100放在A代表
的内存空间中;
4: 数据类型
数值 非数值
整数 非整数 {char String}
{Int} {double ,decimal ,float}
*************变量的使用和命名规则***********
1:string 字符串,书写时用双引号(由0个或多个字符组成
的);
char 字符,书写时要加单引号;
double (+f结尾)小数;
decimal (+m/M结尾) 存储金钱;
int 表示整数;
2:在c#开发环境下输入的值一定是double类型的,所以
在使用输入时要记住值的类型需要转换;
3: 变量声明的3种方法
:先声明,后赋值;
:定义变量时直接赋值;
:一次声明多个同类型变量,之间用逗号隔开;
4:将程序中的【警告】当成错误来处理,练习自己的工作
能力;
5:变量不可重复定义;
变量命名不可与关键字相同;
在c#中的大小写特别敏感;
定义变量名时,变量名要有意义;
6:命名法
在方法中定义变量,单词的首字母小写,其余大写;
Camel命名法 首字母小写,后面的首字母每个都要大写;
Pascal命名法 每个单词的首字母都大写;
*用到缩写的英文单词全部为大写;
***************数据类型转换**********
1:变量就是给内存块起的别名,代表了内存的数值;
2:char类型【表示单个字符】里面必须有元素,没
有空字符;而string类型【字符串】可以有空字符串;
3:有时候为了提高代码的阅读性,我们就必须注意小
的知识点;“()”
4:强制类型转换格式
(数据类型名)待转换的值;
【风险】有可能丢失精度;
转换不完全;
5:数据类型的转换
(类型)变量名=Convert.Toint32(转换类型)
6:Convert不再仅是内存级别的转换,而是考虑数据意义的转换。
Convert是一个加工,改造的过程。
**************try-catch***********
1:出错代码捕获机制
Try
{ 【1】需要验证的出错代码 }
Catch
{ 【2】出错后的处理 }
若执行程序,执行了【1】代码,则【1】中代码
正确,若执行了代码【2】则【1】中的代码出错;
*************自加自减复合运算符************
1:【i++】 后自加 【i--】 后自减{先使用i的值,在运算}
【++i】前自加 【--i】前自减{先运算,在使用}
2:一般情况下,一元运算符优先级大于二元运算符;
3:能够改变变量中的值为[=],[++/--]三种;
4:在C#中有6个关系运算符,用于比较两个事物之间
的关系;{>,<,==,!=,>=,<=}
5:任何一个关系表达式运算的结果是个bool类型{是真还是假}
数据类型【bool】
结果
{
.true
.flase
}
6:关于表达式:由于它是由关系运算符连接起来的
************逻辑表达式***********
1:当两个值进行比较时,他们必须是同一个类型,要不然
会报错;{只返回true和flase}
2:
【&&】逻辑与 {bool类型}
{表达式 1&&表达式 2}(一假为假)
【||】逻辑或
{表达式 1||表达式 2}(一真为真)
【!】逻辑非
{!表达式}(非真即假{取反})
********************if************************
1:if 结构的基本语句
If(条件)
语句1;
执行过程:如果条件为true,则执行语句1;否则执行
其后面的语句;
2:类型的自动转换规则
.参与运算(算术运算和赋值运算)的操作数和结果类
型必须一致。当不一致时,系统会自动完成类型的自动转换
3:如果有一个操作数为double类型,则在整个表达式中可
提升为double类型(类型的自动转换)
4:不同的类型通过“+”运算的结果是不同的
************if-else*************
1:在if-else-if语句中,只有当上一个不成立时,才会进入下一个if语句并进行if语句后面的条件判断;
2:Switch-case语句
语法:【遇到break,直接跳出switch循环,而遇到continue则直接结束本次循环,进行下一次的循环比较】
Switch(表达式)
{
Case 值1:语句快1;berak;
Case 值2:语句快2;break;
Default :语句快3;break;
}
【执行过程,首先判断表达式,然后在根据case进行判断,选择那个case,若没有则执行default语句;】
3:if-else-if与switch的比较
相同点:都可以实现多分枝语句;
不同点:switch一般只能用于等值比较;if-else-if可以处理范围;
******21while*******
1:对于循环,可以使我们的很多步骤减少,节约的时间;
2:while语法:【先判断,后执行】
While(循环条件)
{
循环体;
}
*****************do-while*****************
1:语法
Do
{循环体}
While(条件);
2:do while是先执行后判断;
While do是先判断,后执行;
3:程序的调试;【每个程序员都会出错,但是调试的本领,不是每个人都会的】
设置断点
单行运行
*观察变量{F10,F11}
4:在自己觉得有可能出现的错误前面点一下,出现一个点,就是设置了断点,然后按运行,启动调试,开始一句一句的执行,仔细观察每一句的语句的执行过程{F10,F11};
C#基础02的更多相关文章
- javascript基础02
javascript基础02 1.数据类型 数据类型的描述在上篇的扩展中有写到链接 由于ECMAScript数据类型具有动态性,因此的确没有再定义其他数据类型的必要.这句话很重要. 如果以后再数据类型 ...
- javaSE基础02
javaSE基础02 一.javac命令和java命令做什么事情? javac:负责编译,当执行javac时,会启动java的编译程序,对指定扩展名的.java文件进行编译,生成了jvm可以识别的字节 ...
- java基础学习05(面向对象基础02)
面向对象基础02 实现的目标 1.String类的使用2.掌握this关键字的使用3.掌握static关键字的使用4.了解内部类 String类 实例化String对象一个字符串就是一个String类 ...
- 085 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 04 构造方法调用
085 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 04 构造方法调用 本文知识点:构造方法调用 说明:因为时间紧张,本人写博客过程中只是 ...
- 084 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 03 构造方法-this关键字
084 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 03 构造方法-this关键字 本文知识点:构造方法-this关键字 说明:因为时间紧 ...
- 083 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 02 构造方法-带参构造方法
083 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 02 构造方法-带参构造方法 本文知识点:构造方法-带参构造方法 说明:因为时间紧张, ...
- 082 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 01 构造方法-无参构造方法
082 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 01 构造方法-无参构造方法 本文知识点:构造方法-无参构造方法 说明:因为时间紧张, ...
- day32-线程基础02
线程基础02 3.继承Thread和实现Runnable的区别 从java的设计来看,通过继承Thread或者实现Runnable接口本身来创建线程本质上没有区别,从jdk帮助文档我们可以看到Thre ...
- java基础-02数据类型
基本类型 整数 byte byte 数据类型是8位.有符号的,以二进制补码表示的整数 最小值是 -128(-2^7) 最大值是 127(2^7-1) 默认值是 0 byte 类型用在大型数组中节约空间 ...
- 第9天 py就业班基础02.01-02
明天该看就业班的02 03字串符 2018-4-21 10:47:34 数据类型 py自动给数据分类型 2018-4-21 10:55:05 input使用 定义一个变量 然后input输给变 ...
随机推荐
- 可在广域网部署运行的QQ高仿版 -- GG叽叽V3.0,完善基础功能(源码)
(前段时间封闭式开发完了一个项目,最近才有时间继续更新GG的后续版本,对那些关注GG的朋友来说,真的是很抱歉.)GG的前面几个版本开发了一些比较高级的功能,像视频聊天.远程桌面.文件传送.远程磁盘等, ...
- Backbone源码解析(四):View(视图)模块
View视图故名思义,它控制的是界面.我们可以把一个大的网页分成很多部分的视图,按照backbone的架构,每一个视图对应都是一个对象,我们可以通过元素的钩子(id或者class或者其他选择器)把它们 ...
- 翻译-高效DevOps的10项实践
原文链接: http://www.drdobbs.com/architecture-and-design/top-10-practices-for-effective-devops/240149363 ...
- 强大的Sublime编辑器
Sublime是一款功能非常强大的轻量级的代码及文本编辑工具,有关它的介绍和下载可以从官网http://www.sublimetext.com获取.尽管Sublime并非是一款完全免费的IDE开发工具 ...
- java.util.Properties
1 Properties文件中分隔符及空格的处理 因为 Properties 继承于 Hashtable,所以可对 Properties 对象应用 put 和 putAll 方法.但强烈反对使用这两个 ...
- javascript事件监听与事件委托
事件监听与事件委托 在js中,常用到element.addEventListener()来进行事件的监听.但是当页面中存在大量需要绑定事件的元素时,这种方式可能会带来性能影响.此时,我们可以用事件 ...
- MVVM架构~knockoutjs系列之正则表达式使规则更灵活
返回目录 几乎每种验证架构都会有正则表达式的加盟,一般地,一种验证架构首先会提供一些标准的,常用的验证规则,它们通常是数字验证,电话验证,email验证,长度验证,范围验证,日期验证等,而如果使你的验 ...
- 知方可补不足~row_number,rank,dense_rank,ntile排名函数的用法
回到目录 这篇文章介绍SQL中4个很有意思的函数,我称它的行标函数,它们是row_number,rank,dense_rank和ntile,下面分别进行介绍. 一 row_number:它为数据表加一 ...
- EF架构~在T4模版中为所有属性加默认值
回到目录 在项目开发过程中,出现了一个问题,就是新添加一个非空字段后,原来的程序逻辑需要被重新修改,即将原来的字段添加到程序里,这种作法是非常不提倡的,所以,我通过T4模版将原来的实体类小作修改,解决 ...
- 理解 Lua 的那些坑爹特性
按:最近看到了依云的文章,一方面,为Lua被人误解而感到十分难过,另一方面,也为我的好友, 依云没有能够体会到Lua的绝妙和优雅之处而感到很遗憾,因此我写了这篇文章,逐条款地说明了 依云理解中出现的一 ...