C#语法基础.ppt

上传人:少林足球 文档编号:4119789 上传时间:2019-10-19 格式:PPT 页数:33 大小:1.53MB
返回 下载 相关 举报
C#语法基础.ppt_第1页
第1页 / 共33页
C#语法基础.ppt_第2页
第2页 / 共33页
C#语法基础.ppt_第3页
第3页 / 共33页
C#语法基础.ppt_第4页
第4页 / 共33页
C#语法基础.ppt_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《C#语法基础.ppt》由会员分享,可在线阅读,更多相关《C#语法基础.ppt(33页珍藏版)》请在三一文库上搜索。

1、第二章 C#语法基础(二),本章目标,C#数据类型,C#数据类型,数据类型 值类型 引用类型,数据类型,C#拥有比C、C+更宽泛的数据类型 Object类 系统提供的基类型,是所有数据类型的基类 对于任一object变量,均可以赋值任何类型的值 object obj1; obj1 = 3.12; obj1 = K; obj1 = “asf“; 值类型。 引用类型。,数据类型,值类型与引用类型 值类型:栈中存值 引用类型:栈中存引用,堆中存值,5,x,a,SSSS,int x = 5; int a = new int5;,栈,堆,数据类型,数据类型,数据类型,简单值类型,值类型 简单类型,C+的

2、简单类型: 整数类型 浮点类型 小数类型 字符类型 布尔类型 字符类型 ,C#的简单类型: 整数类型 浮点类型 小数类型 字符类型 布尔类型 字符类型 ,值类型 简单类型,值类型 简单类型,字符类型 类型标识符char,采用Unicode字符集。 使用成对的单引号表示:A 单引号内有效字符数量只能为一个 布尔类型 类型标识符Bool 只有两种值:true、false,数据类型,常用转义字符,单引号,双引号,反斜杠,空字符(null),发出一个警告,倒退一个字符,换页 新的一行 换行并移到同一行的最前面 水平方向的Tab 垂直方向的Tab,数据类型,数据类型,C+语言的结构体: struct 标

3、识符 /普通数据 /成员方法 ,C#语言的结构类型: struct 标识符 /成员变量 /成员方法 ,数据类型,结构类型实例 struct Rectangle public double long; public double width; public static string rectName; public void area() Console.WriteLine(rectName+long * width); ,数据类型,结构类型与类类型的区别 存储方式:一个是值类型、一个是引用类型,栈区效率高,但资源有限,不适合处理大的逻辑复杂对象 继承性:机构体不可继承,类可以继承 内部结构:

4、结构体不能声明默认构造函数,类可以声明默认构造函数,结构体不能有析构函数,类可以有析构函数 实例化:结构体可以使用new关键字,也可以不使用,类必须使用new关键字,数据类型,选择结构还是类 栈的空间有限,对于大量的逻辑的对象,创建类要比创建结构好一些 结构表示如点、矩形和颜色这样的轻量对象 大多数情况下该类型只是一些数据且不会发生继承关系时,结构是最佳的选择,数据类型,数据类型,枚举类型 用户自定义的数据类型 是一种允许用符号代表数据的值类型 默认访问级别是public 例如:将一个星期的7天分别用符号Monday、Tuesday、Wednesday、Thursday、Friday、Satu

5、rday和Sunday来表示,数据类型,C语言中创建枚举: enum WeekDay Sun, Mon, Tue, Wed, Thu, Fri, Sat;,C#语言中创建枚举: enum WeekDay Sun, Mon, Tue, Wed, Thu, Fri, Sat;,C#规定枚举中第一个元素默认从0开始,我们也可以自己设定开始值,如下: enum color yellow, brown, blue, black=6, purple; /调用 Console.WriteLine(color.brown); Console.WriteLine(int)color.purple);,数据类型,

6、一维数组 格式: 数组类型 数组名; 例:int a; string arr; char carr; 二维数组的定义 数据类型 , 数组名; 例: double , dArr; /定义一个double型二维数组,数据类型,数组静态初始化: 数组项不多,且各项的值已知又不经常变化的情况下,可选择静态初始化,要求初始化和数组定义一起完成。 静态初始化数组的格式如下: 数据类型 数组名=元素1,元素2.; 例如: int IntArr=-45,9,29,32,46; char StringArr=a,b, c, d;,数据类型,数组动态初始化: 当数组项比较多,每项内容不定时,可以选择动态初始化,未

7、赋值的项会有一个默认值。 动态初始化需要借助new运算符,为数组元素分配内存空间,并为数组元素赋初值,数值类型初始化为0,布尔类型初始化为false,字符串类型初始化为null。 格式: 数组名=new 数据类型数组长度; 例:a =new int6; 也可以将定义和初始化写在一起: 例: string arr=new string3 “as”,”vb”,”23”;,数据类型,数据类型,String类 String是引用类型 是被双引号包含的一系列字符 String类是专门对字符串进行操作的。 string str1=中国,; string str2=你好!; string str3=str1

8、+str2; /这相当于str3=中国,你好! char c=str30; /取出str3的第一个字符,即“中”字,数据类型,C#支持两种形式字符串常量 常规字符串常数 “This is a test” “C#程序 t 设计教程” “He said ”Hello”to you” 逐字字符串常数 逐字字符串常数以开头,后跟一对双引号,在双引号中放入字符 区别 在逐字字符串常数的双引号中,每个字符都代表其最原始的意义,在逐字字符串常数中没有转义字符 ”电子 t 高专” “He said ”Hello”to you”,数据类型,类型转换 数据类型在一定条件下可以相互转换 隐式转换 显示转换,请问一下

9、那些是隐式转换,那些是显示转换? Int i=518; (char)65; Float b=i; (int)6.28;,数据类型,隐式转换 系统默认的,不需加声明就可以进行的 低精度赋值给高精度时进行隐式转换,显示转换 又叫强制类型转换 转换过程中需指明转换类型 格式:(类型标识符)表达式,public class ConvertClass public int Attr get;set; ConvertClass convertClass=1; int cInt=(ConvertClass)convertClass;,数据类型,装箱 将值类型隐式转换为对象类型(object) Int i=1

10、23; object obj=I; 拆箱 将对象类型数据显示转换为值类型数据 Object obj=223; int k=(int)obj;,数据类型,值类型与引用类型比较,访问修饰符,public同一程序集中的任何其他代码或引用该程序集的其他程序集都可以访问该类型或成员。 private只有同一类或结构中的代码可以访问该类型或成员。 protected只有同一类或结构或者派生类中的代码可以访问该类型或成员。 internal同一程序集中的任何代码都可以访问该类型或成员,但其他程序集中的代码不可以。 protected internal同一程序集中的任何代码或其他程序集中的任何派生类都可以访问该类型或成员。,默认访问权限,命名空间下的元素的默认访问修饰符 命名空间下只能使用两种访问修饰符public和internal。如果没有显示的给这些元素访问修饰符,其修饰符默认为internal 。 各类型中的成员的默认访问修饰符 接口成员访问修饰符默认为public,且不能显示使用访问修饰符。 类成员默认访问修饰符为private; 枚举成员默认为public访问修饰符,且不能显示使用修饰符。 结构成员默认为private修饰符,结构成员无法声明为protected成员,因为结构不支持继承。,自己动手,冒泡算法,谢谢指导! Thanks!,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1