C#程序设计pp2.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《C#程序设计pp2.ppt》由会员分享,可在线阅读,更多相关《C#程序设计pp2.ppt(38页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、nC#程序设计pp22.6控制台I/OC#C#基础概述基础概述1.1.NET平台介绍本章结构本章结构1.1.NET平台介绍2.4枚举1.1.NET平台介绍2.3流控制语句2.7编写高质量的C#代码2.1 变量2.2 预定义数据类型2.5数组 C#C#数据类型包括基本类型(类型中最基础的部分),如数据类型包括基本类型(类型中最基础的部分),如intint、charchar,floatfloat等,也包括比较复杂的类型,如等,也包括比较复杂的类型,如stringstring、decimaldecimal(十进制)等(十进制)等.作为完全面向对象的语言,作为完全面向对象的语言,C#C#中的所有数据类
2、型是一个真正的类中的所有数据类型是一个真正的类.根据在内存中存储位置的不同,根据在内存中存储位置的不同,C#C#中的数据类型可分为以下两类:中的数据类型可分为以下两类:1.1.值类型:值类型:该类型的数据长度固定,存放于该类型的数据长度固定,存放于栈栈内。内。2.2.引用类型:引用类型:该类型的数据长度可变,存放于该类型的数据长度可变,存放于堆堆内。内。C#C#的语法设计与的语法设计与C C和和C+C+很相似。本章很相似。本章主要介绍主要介绍C#C#程序设计基础知识,包括数据程序设计基础知识,包括数据类型、常量、变量和语句结构等。类型、常量、变量和语句结构等。C C#中中的的数数据据类类型型2
3、.1变量变量2.1.1变量的初始化变量的初始化2.1.2变量的作用域变量的作用域2.1.3常常 量量2.1变量变量2.1.1变量的初始化变量的初始化 在在C#C#中,使用变量的基本原则是:先定义,后中,使用变量的基本原则是:先定义,后使用。使用。C#C#中的变量命名规范如下:中的变量命名规范如下:(1 1)必须以字母或下划线开头;)必须以字母或下划线开头;(2 2)只能由字母、数字、下划线组成,不能包含空)只能由字母、数字、下划线组成,不能包含空格、标点符号、运算符,以及其他符号;格、标点符号、运算符,以及其他符号;(3 3)不能与)不能与C#C#关键字(如关键字(如classclass、ne
4、wnew等)同名。等)同名。C#对大小写是敏感的。对大小写是敏感的。2.1变量变量2.1.1变量的初始化变量的初始化C#中的变量以下列方式进行声明中的变量以下列方式进行声明:AccessModifier DataType VariablePublicPrivateProtectedintstringfloat2.1变量变量 变量的作用域是可以访问该变量的代码区域。一般情变量的作用域是可以访问该变量的代码区域。一般情况下,确定作用域有以下规则:况下,确定作用域有以下规则:(1)只要字段所属的类在某个作用域内,其字段只要字段所属的类在某个作用域内,其字段(又称成员又称成员变量变量)也在该作用域内。
5、也在该作用域内。(2)局部变量存在于声明该变量的语句块或方法结束的封局部变量存在于声明该变量的语句块或方法结束的封闭花括号之前的语句内。闭花括号之前的语句内。(3)在在for、while或类似语句中声明的局部变量存在于该或类似语句中声明的局部变量存在于该循环体内。循环体内。2.1.2变量的作用域变量的作用域2.1变量变量 大型程序在不同部分为不同的变量使用相同的变量名大型程序在不同部分为不同的变量使用相同的变量名是很常见的,只要变量的作用域是程序的不同部分,就不会是很常见的,只要变量的作用域是程序的不同部分,就不会有问题,也不会产生模糊性。但要注意,同名的局部变量不有问题,也不会产生模糊性。但
6、要注意,同名的局部变量不能在同一作用域内声明两次。所以下面的代码是错误的:能在同一作用域内声明两次。所以下面的代码是错误的:int x=20;int x=20;int x=30;int x=30;2.1.2变量的作用域变量的作用域局局部部变变量量的的作作用用域域冲冲突突2.1变量变量 在某些情况下,在某些情况下,C#C#可以区分名称相同可以区分名称相同(尽管其完全限定尽管其完全限定的名称不同的名称不同)、作用域相同的两个标识符。因为它把声明为、作用域相同的两个标识符。因为它把声明为类级的变量看做字段,而把在方法中声明的变量看做局部变类级的变量看做字段,而把在方法中声明的变量看做局部变量。此时编
7、译器允许声明第量。此时编译器允许声明第2 2个变量。个变量。2.1.2变量的作用域变量的作用域字字段段和和局局部部变变量量的的作作用用域域冲冲突突2.1变量变量v常量一旦初始化就不再发生变化,可以理解为符号化的常数。使用常量一旦初始化就不再发生变化,可以理解为符号化的常数。使用常量可以使程序变得更加灵活易读。常量可以使程序变得更加灵活易读。例如,可以用常量例如,可以用常量PI来代替来代替3.1415926,一方面程序变得易读,一方面程序变得易读,另一方面,需要修改另一方面,需要修改PI精度的时候无需在每一处都修改,只需在代精度的时候无需在每一处都修改,只需在代码中改变码中改变PI的初始值即可。
8、的初始值即可。v常量的声明和变量类似,需要指定其数据类型、常量名,以及初始常量的声明和变量类似,需要指定其数据类型、常量名,以及初始值,并需要使用值,并需要使用const关键字,例如:关键字,例如:public const double PI=3.1415;2.1.3常常 量量2.2预定义数据类型预定义数据类型2.2.1值类型和引用类型值类型和引用类型2.2.2预定义的值类型预定义的值类型2.2.3预定义的引用类型预定义的引用类型2.2预定义数据类型预定义数据类型值值值值类类类类型型型型引引引引用用用用类类类类型型型型2.2.1值类型和引用类型值类型和引用类型2.2预定义数据类型预定义数据类型
9、2.2.1值类型和引用类型值类型和引用类型C#内置的值类型是最基本的数据类型,内置的值类型是最基本的数据类型,例如整数、浮点数、字符、布尔类例如整数、浮点数、字符、布尔类型等。型等。1整数类型如整数类型如Int,Long,Short,Byte等等等等2浮点数类型浮点数类型float(float(占用:占用:4)(4)(精度:精度:7)7)double(double(占用:占用:8)(8)(精度:精度:151516)16)3.Decimal类型类型 该类型表示精度更高的浮点数。该类型表示精度更高的浮点数。4布尔型布尔型 C#的布尔型是的布尔型是bool,其取值包括,其取值包括True和和Fals
10、e5字符型字符型 Char(C#中统一采用Unicode字符集)值值类类型型2.2预定义数据类型预定义数据类型2.2.1值类型和引用类型值类型和引用类型值值类类型型 除上面介绍的简单值类型之外,用户还可以定义复合值类型。常用除上面介绍的简单值类型之外,用户还可以定义复合值类型。常用的复合值类型包括的复合值类型包括结构和枚举结构和枚举。结构属于值类型可以有方法可以拥有构造函数不能实现继承struct structEx public int structDataMember;public void structEx()/构造函数实现 public void structMethod1()/stru
11、ctMethod1 实现 结构和类的比较结构和类的比较结构存放在栈中并以值传递类存放在堆中并以引用传递6结构结构2.2预定义数据类型预定义数据类型2.2.1值类型和引用类型值类型和引用类型C#不允许在安全代码中使用指针,因此要处理堆中的数据就需要不允许在安全代码中使用指针,因此要处理堆中的数据就需要使用引用数据类型,使用使用引用数据类型,使用new关键字实例化引用数据类型的对象,并关键字实例化引用数据类型的对象,并指向堆中的对象数据。例如:指向堆中的对象数据。例如:Obj1 new Obj();Obj1即指向堆中的即指向堆中的Obj对象。对象。C#中常用的内置引用数据类型。中常用的内置引用数据
12、类型。1指针指针2数组数组3类、接口类、接口4.代理(委托)代理(委托)引引用用类类型型2.2预定义数据类型预定义数据类型2.2.1值类型和引用类型值类型和引用类型引引用用类类型型C#支持两个预定义的引用类型支持两个预定义的引用类型 object类型就类型就是最终的父类型,是最终的父类型,所有内在的和用户所有内在的和用户定义的类型都从它定义的类型都从它派生而来。这是派生而来。这是C#的一个重要特性。的一个重要特性。所有的类型都隐含所有的类型都隐含地最终派生于地最终派生于System.Object类类 string是一个引是一个引用类型,用类型,string对象对象保留在堆上,而不是保留在堆上,
13、而不是堆栈上,因此,当把堆栈上,因此,当把一个字符串变量赋给一个字符串变量赋给另一个字符串时,会另一个字符串时,会得到对内存中同一个得到对内存中同一个字符串的两个引用字符串的两个引用Object 和和 String Object是所有类的基类是所有类的基类,所以可以对所以可以对Object类的变量类的变量赋任何类型的值,例如,赋任何类型的值,例如,string类是专门对字符串操作类是专门对字符串操作的类的类,在在System名字空间中定名字空间中定义义(System.string),可以进,可以进行连接和获取字符操作行连接和获取字符操作。类类2.2预定义数据类型预定义数据类型2.2.1值类型和
14、引用类型值类型和引用类型引引用用类类型型string S1=Welcome!;string S2=NET AND C#;char c=S10;bool=(S1=S2);1.int i=10;2.string s=i.ToString();说明:说明:i是一个值类型数据,存放在栈是一个值类型数据,存放在栈内存中;内存中;s是一个引用类型的是一个引用类型的String对象,存放在堆中。对象,存放在堆中。装箱和拆箱装箱和拆箱2.2预定义数据类型预定义数据类型2.2.1值类型和引用类型值类型和引用类型引引用用类类型型装箱和拆箱装箱和拆箱2.2预定义数据类型预定义数据类型2.2.1值类型和引用类型值类型
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C# 程序设计 pp2
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内