C#入门基础教程课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《C#入门基础教程课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C# 入门 基础教程 课件
- 资源描述:
-
1、A Pera Global Company PERA ChinaC#基础A Pera Global Company PERA China通过这一节课,可以使听众对.NET基本概况和C#开发语言基本结构和语法有一个概括性的认识。A Pera Global Company PERA China.NET基础语言基础基本类型流程控制A Pera Global Company PERA China.NET基础A Pera Global Company PERA China.NET的定义.NET技术是微软公司推出的一个全新概念,“它代表了一个集合、一个环境和一个可以作为平台支持下一代Internet的可编
2、程结构。”.NET的最终目标就是让用户在任何地方、任何时间,以及利用任何设备都能访问所需的信息、文件和程序 .NET开发平台包括编程语言(C# ,Visual Basic ,Visual C+).NET开发工具(Visual Studio .NET).NET框架(.NET Framework)A Pera Global Company PERA China为什么选择为什么选择.NET 可以同时使用多种开发语言多种开发语言进行开发可以利用方便方便的开发工具开发工具书写更少更少的代码代码充分利用Windows系统的应用程序服务功应用程序服务功能能,如先进快速的事件处理和消息队列机制软件服务的发布发
3、布良好的继承性继承性利用ADO.NETADO.NET,数据访问更加简单A Pera Global Company PERA China.NET架构架构操作系统公共语言运行时 (CLR).Net Framework 类库 (FCL)A Pera Global Company PERA ChinaCLR能提供什么?能提供什么?CLR是Common Language Runtime的简写,中文翻译是公共语言运行。全权负责托管代码的执行(主要有内存管理和垃圾收集),是.NET的基石。CLR两个基础核心:元数据:依赖元数据进行内存管理和垃圾收集等等MSIL中间语言:使得.NET具有跨语言的集成的能力。C
4、LR所支持的语言都由相对应的编译器编译为MSIL指令。再由CLR中的JIT组件编译MSIL为机器语言,最后由CLR托管执行。A Pera Global Company PERA China.NET Frameworkn包含一个非常大的代码库,可以在客户语言(如C#)中通过面向对象的编程技术来使用这些代码这个库分为不同的模块,可以根据需要来使用其中的各个部分如,一个模块包含windows应用程序的构件,另一个模块包含web开发的代码块等等n定义了一些基本数据类型,以便使用.NET Framework在各种语言之间进行交互作用,这称为通用类型系统(Common Type System,CTS)A
5、Pera Global Company PERA China.NET程序编译运行流程程序编译运行流程编译过程JIT编译A Pera Global Company PERA China语言基础A Pera Global Company PERA China简介简介C#是一种简洁、现代、面向对象且类型安全的编程语言。C#特性:垃圾回收 (Garbage collection) 将自动回收不再使用的对象所占用的内存异常处理 (exception handling) 提供了结构化和可扩展的错误检测和恢复方法类型安全 (type-safe) 的语言设计则避免了读取未初始化的变量、数组索引超出边界或执行未
6、经检查的类型强制转换等情形C# 是面向对象的语言,然而 C# 进一步提供了对面向组件编程的支持。A Pera Global Company PERA China注释(一)注释(一)注释就是写在源代码中的描述信息,用来帮助开发人员阅读源代码的。注释信息会在编译过程中自动过滤掉,不会出现在程序集中。C#支持三种注释格式:单行注释:以“/”开始,此行后续任何文本都作为注释内容。多行注释:以“/*”开始,“*/”结束。可跨越多行。XML注释:以“/”开始,后面紧跟XML样式元素,用来描述类型方法,属性,事件,索引器等等信息, Visual Studio中智能提示的描述信息依赖此注释,也可在编译时期导出
7、这些XML格式的注释到一个XML文档A Pera Global Company PERA China注释(二)注释(二)class Program / / Main方法 / / 命令行参数 static void Main(string args) /* 声明并初始化一个变量 * */ string info = hello world; /打印hello world System.Console.WriteLine(info); XML格式注释多行注释 /*注释内容*/单行注释 /注释内容A Pera Global Company PERA ChinaHello World 程序(一)程序(
8、一)声明 HelloWorld 类程序入口点, Main 的返回类型为 void控制台类的 WriteLine() 方法用于显示输出结果导入 System 命名空间声明命名空间 Notepad将文件保存为 HelloWorld.csA Pera Global Company PERA ChinaHello World 程序(二)程序(二)命名空间:C# 程序是利用命名空间组织起来的。一种“逻辑文件夹”的概念。开发人员可以定义自己的命名空间。常用的命名空间如下:命名空间说明System 一些基本数据类型System.Data 处理数据存取和管理,在定义 ADO.NET 技术中扮演重要角色Syst
9、em.IO 管理对文件和流的同步和异步访问System.Windows 处理基于窗体的窗口的创建System.Reflection 包含从程序集读取元数据的类System.Threading 包含用于多线程编程的类 System.Collections 包含定义各种对象集的接口和类A Pera Global Company PERA China标识符(一)标识符(一)标识符是指标识某一个东西的一个名字符号比如:变量名,类型名,参数名等等。标识符以字母或者下划线(_)开头,其余部分允许出现数字和Unicode 转义序列。关键字在以为前缀的情况下也可以作为标识符。C#严格区分字母大小写。如Age和
10、age是不同的标识符。A Pera Global Company PERA China标识符(二)标识符(二)示例示例是否有效是否有效说明说明123否不能以数字开头n123是字母开头,混合数字N123是大些字母N,所以和n123是不同的标识符_n123是下划线加字符和数字int否int是关键字int是做前缀加关键字nu0061me是支持Unicode转义序列A Pera Global Company PERA China关键字关键字关键字是一组特殊的“标识符”,由系统定义,供开发者使用。因而我们不能再次定义关键字为标识符(以 字符开头时除外)。比较常用的有using、class、static、
11、public、get*、set*、var*等等。其中加“*”的比较特殊些,称作上下文关键字,这些关键字只有在特殊的位置才会有意义。如get和set只有在属性中才有意义、var只能用在局部变量环境下。A Pera Global Company PERA China声明声明&初始化初始化声明一个变量的语法:数据类型 变量名;/变量名须为有效标识符如:string name;声明并初始化一个变量:数据类型 变量名=初始化值;如:string name=“张三”;A Pera Global Company PERA China运算符(一)运算符(一)运算符类型运算符类型常用运算符常用运算符示例示例算数
12、运算符+ - * / %int i=1,j=2;i+j;/结果3关系运算符 = j;/结果false赋值运算符= += -= *= /= %=i+=j;/结果3i=i+j;的简写形式自运算符前置:+ -后置:+ -int n=1;int m;前置:m=+n;/结果m=2,n=2后置:m=n+;/结果m=1,n=2成员访问运算符. .:调用对象成员:访问数组元素或索引器逻辑运算符! & |bool a=true;!a;/结果false常用的运算符:A Pera Global Company PERA China运算符(二)运算符(二) 大多数运算符都可以重载 (overload)。运算符重载允许
13、指定用户定义的运算符实现来执行运算,这些运算的操作数中至少有一个,甚至所有操作数都属于用户定义的类类型或结构类型。 运算符是有优先级的,优先级高的先运算。A Pera Global Company PERA China表达式表达式 表达式 由操作元 (operand) 和运算符 (operator) 构成。运算元可以是常数、对象、变量、常量、字段等等。运算符可以是上节提到的一些运算符。 当表达式包含多个运算符时,运算符的优先级 (precedence) 控制各运算符的计算顺序。例如,表达式x + y * z 按 x + (y * z) 计算。A Pera Global Company PERA
14、 China演示Hello WorldA Pera Global Company PERA China基本类型A Pera Global Company PERA China变量(一)变量(一) 变量( variable ),言外之意即是可变的,用来存储程序所需的数据。 声明一个变量的语法结构如下:/变量名必须是有效的标识符数据类型 变量名; 也可以在声明的同时初始化该变量:/变量名必须是有效的标识符/值必须是与变量声明的数据类型兼容。数据类型 变量名=值;A Pera Global Company PERA China变量(二)变量(二)classclass ProgramProgram s
15、taticstatic voidvoid Main( Main(stringstring argsargs) ) /声明变量声明变量 intint age; age; /为变量为变量ageage赋值赋值 age = 18; age = 18; /声明声明namename并初始化为李四并初始化为李四 stringstring name = name = 李四李四 ; ; A Pera Global Company PERA China常量(一)常量(一) 常量:一经初始化就不会再次被改变的“变量”,在程序的整个运行过程中不允许改变它的值。 编译时常量:const 数据类型 常量名=值; 编译时常
16、量做为类成员时总是作为static成员出现。不允许自己加static关键字。 编译时常量的值必须是在编译时期能确定下来的,只支持一些基本数据类型。 运行时常量:readonly 数据类型 常量名=值;运行时常量可以弥补编译时常量不能定义复杂数据类型的缺点。A Pera Global Company PERA China常量(二)常量(二)class Program /正确,string为基本数类型 const string NAME_CONST = const string; /错误,Program为自定义复杂类型 const Program PROGRAM_CONST = new Progr
17、am(); /正确, readonly string NAME_READONLY = readonly string; /正确,可定义任意数据类型 readonly Program PROGRAM_READONLY = new Program();A Pera Global Company PERA China结构(一)结构(一) 结构 (struct) 是能够包含数据成员和函数成员的数据结构。 结构类型的变量直接存储该结构的数据。 所有结构类型都隐式地从类型System.ValueType继承。 System.ValueType继承自System.Object。 结构是值类型,不需要在堆分配
18、。 结构类型不允许继承。A Pera Global Company PERA China结构(二)结构(二)/用struct修饰,表示一个结构类型struct Point public int x; public int y; public Point(int x, int y) this.x = x; this.y = y; A Pera Global Company PERA China枚举(一)枚举(一) 枚举 (enum) 是具有一组命名常量的独特的值(结构)类型 每个枚举类型都有一个相应的整型类型,称为该枚举类型的基础类型 (underlying type)。没有显式声明基础类型的枚
19、举类型所对应的基础类型是 int。枚举类型的存储格式和取值范围由其基础类型确定。 所有枚举类型默认继承自System.Enum类型,System.Enum继承自System.ValueType。故枚举为结构类型。A Pera Global Company PERA China枚举(二)枚举(二)/:long表括示基础类型是long/如果不写则默认为intenum Alignment : long /=也可不写,默认则是以0开始,依次加1 Left = -1, Center = 0, Right = 1A Pera Global Company PERA China枚举(三)枚举(三)publi
20、c class Test static void Main() /初始化一个枚举变量 Alignment alignment = Alignment.Left; /输出:Left Console.WriteLine(alignment); /输出:-1 Console.WriteLine(long)alignment); /获得基础类型 Type underlyingType = Enum.GetUnderlyingType(typeof(Alignment); /输出:System.Int64 /解释:long关键字映射的类型为System.Int64 Console.WriteLine(u
21、nderlyingType.FullName); A Pera Global Company PERA China数组(一)数组(一)数组 (array) 是一种包含若干变量的数据结构,这些变量都可以通过计算索引进行访问。数组中包含的变量(元素 (element))具有相同的类型,该类型称为数组的元素类型 (element type)。数组类型为引用类型,因此数组变量的声明只是为数组实例的引用留出空间。在运行时使用 new 运算符动态创建(须指定长度),长度在该实例的生存期内是固定不变的。数组元素的索引范围从 0 到 Length - 1。new 运算符自动将数组的元素初始化为它们的默认值,例
22、如将所有数值类型初始化为零,将所有引用类型初始化为 null。A Pera Global Company PERA China数组(二)数组(二) C#支持一维、多维、交错数组。 数组下标一般是从0开始。也提供有其他方式支持非从0下标开始的数组。 System.Array 类型是所有数组类型的抽象基类型。 访问数组元素使用下标方式:array索引A Pera Global Company PERA China数组(三)数组(三)public class Test static void Main() /元素个数为3的int类型数组 int ages = new int3; /3 X 3的多维数
23、组 int, i = new int3, 3; /交错数组 int j = new int2; j0 = new int2 3, 4 ; j1 = new int3; /输出:4 Console.WriteLine(j01); A Pera Global Company PERA China字符串处理(一)字符串处理(一)写程序中很大一部分的时间都是在和字符串打交道。微软给出的.NET类库中也给出了一些字符串处理的类型。C#中的常用字符串处理类:System.StringSystem.Text.StringBuilder利用String类可以进行字符串的创建,截取,替换,合并等等操作。也可以用
24、“+”方便的进行字符串的合并。大写String与小写string是完全相同的,大写是指.NET类库中的String类型,小写是C#关键字,也是对应到String这个类型上去的。比如在C#中int和Int32也是这样对应的。A Pera Global Company PERA China字符串处理(二)字符串处理(二)String的特别之处:不变性;读共享,写复制;字符串驻留技术;String是引用类型,但其值确是不可变的,即是指已经赋值就不能再改变。针对字符串的一些操作(如合并、截取)都会产生出新的String对象。由于写复制的特性,在一些需要大量合并字符串的场合就会产生出很多临时性的Stri
展开阅读全文