C# 语言入门简单教程

上传人:飞****9 文档编号:127385826 上传时间:2020-04-01 格式:PPT 页数:44 大小:333KB
返回 下载 相关 举报
C# 语言入门简单教程_第1页
第1页 / 共44页
C# 语言入门简单教程_第2页
第2页 / 共44页
C# 语言入门简单教程_第3页
第3页 / 共44页
C# 语言入门简单教程_第4页
第4页 / 共44页
C# 语言入门简单教程_第5页
第5页 / 共44页
点击查看更多>>
资源描述

《C# 语言入门简单教程》由会员分享,可在线阅读,更多相关《C# 语言入门简单教程(44页珍藏版)》请在金锄头文库上搜索。

1、1 C语言基础 2 教学重点 命名空间使用VS NET创建C 程序C 数据类型C 程序结构类和对象面向对象程序设计的三个特性 3 C 简介 C 是Microsoft公司专为 NET开发平台而设计的 完全面向对象的网络编程语言 C 是从C和C 发展而来的 利用C 语言既可以编写Windows应用程序和控制台程序 又可以编写Web程序等 4 命名空间 开发一个大型工程的时候 可能会用到很多对象 需要创建很多类 而且有的时候类的名称会有冲突 使用命名空间不仅可以消除名称冲突 而且有助于很好地组织整个工程 C 的程序代码以类 结构 接口等形式存放在命名空间中 5 命名空间的声明和使用 1 声明 nam

2、espace命名空间名 命名空间的成员 2 有两种使用方法 使用引用的全称 命名空间名 类名 方法名如 System Console WriteLine Hello 利用using语句导入命名空间 然后直接使用类名 using命名空间名 6 使用VS NET创建C 程序 打开VS2005 选择 文件 新建项目 在 新建项目 对话框中 选择 控制台应用程序 输入项目名称和项目创建位置 在代码编辑器中输入相应代码 选择 调试 启动 运行程序 或按F5 7 这是用C 编写的一个简单的HelloWorld程序usingSystem namespaceNotepad classHelloWorld st

3、aticvoidMain Console WriteLine HelloWorld 声明HelloWorld类 描述代码的注释 HelloWorld程序 程序入口点 Main的返回类型为void 控制台类的WriteLine 方法用于显示输出结果 导入System命名空间 声明命名空间Notepad 将文件保存为HelloWorld cs 8 数据类型 值类型简单类型结构类型枚举类型引用类型对象类型字符串类型类类型接口类型委托类型数组类型两者的区别在于进行存取时 值类型的变量直接存储其数据 而引用类型的变量则存储其在系统中对应的存储地址 9 值类型 简单类型整数类型 sbyte byte sh

4、ort ushort int uint long ulong布尔 bool 类型 True False 字符 char 类型 注意 转义符 浮点类型 float double小数 decimal 类型结构类型struct枚举类型enum 10 引用类型 对象类型object字符串类型string类类型class接口类型interface委托类型delegate数组类型array 11 语句和注释 语句是一个基本的指令单位 包括说明语句 表达式语句和流程控制语句等 一般以分号 结尾注释就是在程序中标记 说明某个程序段的作用 它是不会被执行的 单行注释 多行注释 12 标识符 正确 ahellot

5、his is validColorColor1 Color1错误 1testColor testthisisinvalid testIf关键字见课本P77 13 常量 所谓常量 就是在程序的运行过程中其值不能被改变的量 常量的类型也可以是任何一种C 的数据类型 常量的定义格式如下 const常量数据类型常量名 常量值 14 变量 所谓变量 就是在程序的运行过程中其值可以被改变的量 变量的类型可以是任何一种C 的数据类型 所有值类型的变量具有实际存在于内存中的值 也就是说当将一个值赋给变量是执行的是值拷贝操作 变量的定义格式和常量的有些类似 只是没有了const关键字 其定义格式如下 变量数据类

6、型变量名 或 变量数据类型变量名 变量值 15 装箱和拆箱 Net的类型分为两种 一种是值类型 另一种是引用类型 这两个类型的本质区别 值类型数据是分配在栈中 而引用类型数据分配在堆上 那么如果要把一个值类型数据放到堆上 就需要装箱操作 反之 把一个放在堆上的值类型数据取出来 则需要进行拆箱操作 例 inti 123 objecto i 装箱intj int o 拆箱 16 装箱和拆箱示意图 17 运算符 算术运算符加 减 乘 除 取余 自加 自减 位逻辑运算符按位与 按位或 按位取反 按位异或 18 运算符 逻辑运算符逻辑与 逻辑或 逻辑非 条件运算符 操作数1 操作数2 操作数3 19 运

7、算符 关系运算符等于 不等于 小于小于等于 对象创建运算符例 Class1obj newClass1 20 运算符的优先级 21 C 程序结构 顺序结构选择结构循环结构 22 分支语句 if语句if 表达式 代码1 else 代码2 switch语句switch 表达式 case常量1 语句1 break default 语句n break 23 循环语句 for循环for for initializer for condition for iterator 语句块 while循环while 条件表达式 语句块 do循环do 语句块 while 条件表达式 foreach循环foreach 类

8、型变量名in数组名 集合名 语句块 24 foreach语句的用法 intodd 0 even 0 int arr 0 1 2 3 7 23 40 foreach intiinarr if i 2 0 even elseodd Console WriteLine 奇数的个数为 0 偶数的个数为 1 odd even 25 跳转语句 break语句 终止并跳出循环continue语句 终止当前的循环 重新开始一个新的循环goto语句 跳转到指定的位置 建议不要使用 return语句 跳出循环 将控制权返回给包含该return语句的函数成员的调用程序 throw语句 抛出一个异常 26 异常处理语

9、句 异常是程序执行时遇到的任何错误情况或意外行为 以下这些情况都可以引发异常 用户错误的输入内存不够 网络资源不可用磁盘出错 数据库无法使用等每种语言都使用Try Catch Finally形式的结构化异常处理 将可能引发异常的代码节放在Try块中将处理异常的代码放在Catch块中 Finally块总是执行 不论是否有异常发生 27 异常处理语句流程 try 执行的代码 其中可能有异常 一旦发现异常 则立即跳到catch执行 否则不会执行catch里面的内容 catch 除非try里面执行代码发生了异常 否则这里的代码不会执行 finally 不管什么情况都会执行 包括trycatch里面用了

10、return 可以理解为只要执行了try或者catch 就一定会执行finally 28 示例 处理除数为0的异常 usingSystem namespaceyichang classClass1 staticvoidMain string args try 29 Console WriteLine 请输入除数 inti int Parse Console Readline Console WriteLine 1000除以 0 1 i 1000 i catch DivideByZeroExceptione Console WriteLine 除以0异常 0 e Console Read 30

11、定义类 类是一系列具有相同性质的对象的抽象 用于定义引用类型 C 中提供了很多标准的类 用户在开发过程中可以使用这些类 这样大大节省了程序的开发时间 类的定义方法如下 类修饰符 class类名 父类名 成员修饰符 类的成员变量或者成员函数 31 类修饰符 new 新建类 仅允许在嵌套类声明时使用 表明类中隐藏了由基类中继承而来的 与基类中同名的成员 public 公有类 表示不限制对该类的访问 protected 保护类 表示只能从所在类和所在类派生的子类进行访问 internal 内部类 只有其所在类才能访问 private 私有类 只有对包 Net中的应用程序或库才能访问 abstract

12、 抽象类 不允许建立类的实例 sealed 密封类 不允许被继承 类修饰符用于说明类的特性 32 类的成员 变量成员 不以函数形式体现常量变量事件类型函数成员 以函数形式体现方法属性索引指示器运算符构造函数析构函数 33 成员修饰符 在编写程序时 我们可以对类的成员使用不同的访问修饰符 从而定义它们的访问级别 1 公有成员C 中的公有成员提供了类的外部界面 允许类的使用者从内部或外部直接进行访问 公有成员的修饰符为public 这是限制最少的一种访问方式 它的优先是使用灵活 缺点是外界可能会破坏对象成员值得合理性 2 私有成员C 中的私有成员仅限于类中的成员可以访问 从类的外部访问私有成员是不

13、合法的 如果在声明中没有出现成员的访问修饰符 按照默认方式成员为私有的 私有成员的修饰符为private 3 保护成员为了方便派生类的访问 又希望成员对于外界是隐藏的 这时可以使用protected修饰符 声明成员为保护成员 4 内部成员表示该成员是内部成员 只有本程序成员才能访问 其它成员修饰符参见P101 102表3 9 34 类的定义示例 classClassA 定义类ClassA publicinta 声明变量成员privateintb protectedintc publicvoidSetA 声明函数成员 a 1 b 2 c 3 35 对象的创建 类定义后 需要通过new运算符来创建

14、类的实例即对象 创建对象的格式 类名实例名 new类名 参数列表 new运算符的作用是调用类的构造函数来完成对象的初始化工作 如 ClassAc1 newClassA 36 构造函数 构造函数是当类被实例化时首先执行的函数 就是new关键字后面的函数 当创建一个对象时 系统首先给对象分配合适的内存空间 随后系统就自动调用对象的构造函数 因此构造函数是对象执行的入口函数 非常的重要 如果要定义构造函数 那么构造函数的函数名必须和类名一样 构造函数示例见P104 105 37 析构函数 析构函数是当实例对象从内存中删除前最后执行的函数 析构函数在类撤销时运行 常用来处理类用完后的收尾工作 析构函数

15、不能带有参数 也不能被继承 不能拥有访问修饰符 定义形式 classMyClass MyClass 收尾工作 38 类的静态成员 类有两种成员 静态成员和实例成员 静态成员是用static声明的成员 实例成员是没有用static声明的成员 静态成员是在编译阶段分配存储单元 它对所有类的实例是共享的 静态成员通过类名来调用 类名 成员 实例成员是在程序执行过程中创建该类的实例时分配存储单元的 它通过类的实例来调用的 对象名 成员 39 封装性 封装是隐藏属性 方法或实现的详细信息的处理方式 封装性是指把代码封装到大括号中 只能访问自己内部的数据 外边的东西访问不了 封装的目的是增强安全性和简化编

16、程 使用者不必了解具体的实现细节 40 继承性 继承就是一个类在另一个类的基础上创建 子类可以继承父类的所有非private成员 还可以再定义自己的新成员 继承性使得软件模块可以最大限度地复用 并且编程人员还可以对已有的模块进行扩充 而不需要修改原来的源代码 大大提高了软件的开发效率 在定义类的时候可以指定要继承的类 类修饰符 class类名 父类名 成员修饰符 类的成员变量或者成员函数 41 示例 继承的使用 classParents 定义一个基类 privateintn1 1 私有成员不能被继承publicintn2 2 protectedintn3 3 internalintn4 4 42 classChild Parents 定义一个派生类继承基类 privatestrings 类的继承 定义新的变量成员spublicvoidPrint 定义新的函数成员Print 在派生类中继承来的成员和自已新定义的成员一样使用Console Write 0 1 2 3 s n2 n3 n4 43 多态性 多态性是指同一操作作用于不同类的实例 这些类进行不同的解释 从而产生不同的执行结果的现象

展开阅读全文
相关资源
相关搜索

当前位置:首页 > IT计算机/网络 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号