资源预览内容
第1页 / 共62页
第2页 / 共62页
第3页 / 共62页
第4页 / 共62页
第5页 / 共62页
第6页 / 共62页
第7页 / 共62页
第8页 / 共62页
第9页 / 共62页
第10页 / 共62页
亲,该文档总共62页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第三章 C#编程语言第三章第三章 C#C#编程语言编程语言 3.1 C#语法基础 3.2 控制结构 3.3 函数 3.4 事件驱动编程与回送 3.5 开发简单的C#程序第三章 C#编程语言本章教学要求本章教学要求 本章主要介绍C#的基础知识,通过学 习了解C#中的变量、数据类型、表达式;掌 握C#的基本语法结构:选择、循环结构;了 解C#的函数及事件驱动;能使用Visual Studio.NET编写简单的C#程序。 第三章 C#编程语言3.1 C#3.1 C#语法基础语法基础 3.1.1 C#中的变量和数据类型 3.1.2 标识符 3.1.3 运算符 3.1.4 表达式 3.1.5 语句和注释 第三章 C#编程语言3.1.1 C#中的变量和数据类型常量和变量是编程语言中最基本的组成部分,主要用来记录程序 中具有不同类型的信息。常量表示其值不能被改变的量变量是在程序运行过程中数值可变的数据,通常用来记录运算的 中间结果或保存数据,必须事先声明变量。变量声明: int a; string b; 其中int和string为类型名,a、b为变量名。第三章 C#编程语言3.1.1 C#中的变量和数据类型C#中的变量命名需遵循以下原则: (1)变量名必须以字母开头。 (2)变量名由字母、数字和下划线组成,不能包括空 格、运算符、标点符号等符号。 (3)变量名不能与C#中的关键字名称相同。 (4)变量名不能与C#中的类库函数名称相同。第三章 C#编程语言3.1.1 C#中的变量和数据类型按类型值在内存中对应的位置:值类型和引用类型两者的区别:在于进行数据存取时,值类型的变量直接存储其 数据;而引用类型的变量则存储其在系统中对应的存 储地址。 按数据的作用域大小:全局量和局部量按生存周期:自动生存周期、静态生存周期和动态生 存周期按类型:基本类型和派生类型 第三章 C#编程语言3.1.1 C#中的变量和数据类型值类型基本类型结构类型 枚举类型浮点类型整数类型 布尔类型 字符类型小数类型引用类型数 据 类 型对象类型 字符串类型 类类型 接口类型 指代类型 数组按类型值在 内存中对应 的位置第三章 C#编程语言值类型-整数类型 sbyte(有符号8位整数) byte(无符号8位整数) short(有符号16位整数) ushort(无符号16位整数) int(有符号32位整数) uint(无符号32位整数) long(有符号64位整数) ulong(无符号64位整数) 第三章 C#编程语言值类型-布尔(bool)类型 布尔类型的取值仅有true和false两种 直接设置布尔变量 bool bTest = true ; 将一个表达式赋值给布尔变量 bool bTest = (c1 简单赋值(将3赋给变量b) *= b*=3; b=b*3 /= b/=3; b=b/3 %= b%=3; b=b%3 += b+=3; b=b+3 -= b-=3; b=b-3 = b3; b=b3 )、小于等于(=) ,运算的结果是布 尔值,只能为true或者false。 8、条件运算符:(?:)是C#里最特殊的一种运算符,也是惟一的一 个三元运算符。 它是if-then-else语句的一种简写形式,格式如下所示: a = b ? x : y 它的含义是:如果b为真,将x值赋给变量a,否则将y值赋值给a。 第三章 C#编程语言运算符(三) 9、typeof运算符:该运算操作返回一个类型对应的 system.type。 例如:typeof(int),结果是int32 typeof只能对类型操作,不能对变量操作。如int i; typeof(i);是不合法的。 10、sizeof运算符 该运算操作可获得一个类型所占的空间大小,以字节为 单位。 sizeof(int); /结果是4。因为每个int型变量占用4 个字节。 第三章 C#编程语言3.1.4 表达式 表达式是由运算符和运算对象按一定的规则组成的运算 式,可分为算术表达式、关系表达式、逻辑表达式和赋值 表达式。 1、算术表达式:进行算术运算(如加、减、乘、除等)的 表达式。5+6、b/3、a+b*c、 a+b*(c/d-2) 2、关系表达式:运算对象之间运行比较的表达式 。 (2+3) != (3+2) a8 b*c b) Console.WriteLine(“ab”); else Console.WriteLine(“a对象名) /产生异常时执行的代码 finally /总会执行的代码 第三章 C#编程语言3.2.4 异常处理3、异常处理语句的执行顺序是:(1)先执行try块内的代码,如果发行异常,则在产生异 常的地方中断程序。 (2)如果有catch语句,则检查该块的异常类型是否跟产 生的异常类型一样,如果没有catch块,那么就执行 finally语句块。 (3)如果上面的catch语句不跟异常匹配,就检查其它 catch块,如果有跟异常匹配的catch块,则执行它内 部的代码,然后再执行finally语句块(如果有的话) 。如果没有跟与它匹配的catch块,就执行finally语 句块(如果有),在这之后再发生不能匹配的异常。 第三章 C#编程语言3.3 3.3 函数函数 C#允许用户只编写代码一次,然后将其 运行任意需要的次数,以支持主代码体 。这些小程序称为函数。函数是类或结构的成员,C#不允许有全 局函数,所有的函数必须在类或结构内 实现。 在C#中,函数也称为方法。 第三章 C#编程语言3.3.1 定义函数 函数的最简单的语法如下: () /code here 返回 类型 参数 string MyFunction() return ”OK”; string MyFunction(string Name,string Age) return ”OK”; 第三章 C#编程语言3.3.1 定义函数返回类型为关键字void,不提供返回值 void Page_Load() 把函数指定为 返回void,就 不需要return 关键字 第三章 C#编程语言3.3.2 调用函数 调用一个返回void的函数时,只需输入函数名,后跟左括号 、用逗号分隔开的参数列表和右括号。My VoidFunction(“Hello”); 对于有返回值的函数,可以(但不是必须)提供一个变量来包 含这个值。 string ReturnValue; ReturnValue=MyFunctionWhichReturnsAString(); 第三章 C#编程语言 3.3.2 调用函数1)按值传递参数在调用函数时,默 认简单的数值按值 传递给函数。这说 明,在函数内部创 建参数变量时,它 们就包含了传递它 们的值。void Increment(int Number) Number+; void Page_Load() int A=1; Increment(A); Message.Text = A.ToString(); 第三章 C#编程语言 3.3.2 调用函数2)按引用传递参数如果要使函数中进行的计 算影响到调用代码中变量 的内容,可通过引用来传 递参数。 首先修改Increment() 函数,以引用的方式传递 数据。 void Increment(ref int Number) Number+; void Page_Load() int A=1; Increment(ref A); Message.Text=A.ToString();第三章 C#编程语言3.3.2 调用函数3)输出参数 C#的一个强 大功能是一个 函数可以给调 用代码返回多 个值。 C#中out关键 字指定的参数 称为输出参数 。string SetNumber(out int Number) Number=10; Return ”OK”; void Page_Load() int A; string ReturnValue=SetNumber(out A); Message.Text=A.ToString(); Message.Text=”+ReurnValue; 第三章 C#编程语言3.4 3.4 事件驱动编程与回送事件驱动编程与回送 3.4.1 C#中的委托 3.4.2 C#中的事件处理函数 3.4.3 事件驱动编程 3.4.4 回送第三章 C#编程语言3.4.1 C#中的委托C#中的委托允许你将一个对象中的方法传递给另一个 能调用该方法的类的某个对象。你可以将类A中的一 个方法m(被包含在某个委托中了)传递给一个类B ,这样类B就能调用类A中的方法m了。同时,你还可 以以静态(static)的方式或是实例(instance) 的方式来传递该方法。 第三章 C#编程语言3.4.1 C#中的委托C#中的委托是通过继承System.Delegate中的一 个类来实现的,下面是具体的步骤: 1、声明一个委托对象,其参数形式一定要和你想要包 含的方法的参数形式一致。 2、定义所有你要定义的方法,其参数形式和第一步中 声明的委托对象的参数形式必须相同。 3、创建委托对象并将所希望的方法包含在该委托对象 中。 4、通过委托对象调用包含在其中的各个方法。 第三章 C#编程语言3.4.2 C#中的事件处理函数C#中的事件处理函数是一个具有特定参数形式的委托对 象,其形式如下: public delegate void MyEventHandler(object sender, MyEventArgs e); 触发该 事件的 对象 在事件处理函 数中可以被运 用的一些数据 第三章 C#编程语言3.4.2 C#中的事件处理函数public class MyEventArgs EventArgs public string m_myEventArgumentdata; 通过关键字event来引用委托对象,方法如下: public event MyEventHandler MyEvent; 第三章 C#编程语言3.4.3 事件驱动编程ASP.NET采用了回送技术,它将信息传送给服务器 进行处理,而不是在客户浏览器上处理。这里的回送 表示当用户触发一个事件时,信息可以传回到服务器 。ASP.NET的事件驱动特性允许将代码完全模块化到独立 的函数中,当需要这样的函数时,直接运行它们即可 。允许将代码完全模块化到独立的函数中,当需要这 样的函数时,直接运行它们即可。 第三章 C#编程语言 3.4.4 回送回送就是一处理过程,该过程包括:浏览器将信息发 送到服务器,告诉服务器处理事件,服务器完成此事 件的处理工作并将得到的HTML再传回到浏览器。回 送只作用于Web窗体,且只有服务器控件才能将信息 传回到服务器。 IsPostBack测试用于确定用户是否返回了窗体和数 据,窗体是否是第一次显示。 If(Page.IsPostBack)如果没有生成回送信息,这个测试就生成False,否 则生成True。 第三章 C#编程语言3.5 3.5 使用使用Visual Studio.NETVisual Studio.NET开发开发C#C#程序程序using System; class HelloWorld public stati void Main(string args)Console.WriteLine(“Hello World!”); 程序功能就是在屏幕上打印一个 Hello World! 第三章 C#编程语言开发过程演示:选择“文件”“新建”“项目”菜单项“Visual C#项 目” /“模板”选择“控制台应
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号