ASPC#命名空间和基类库初步copy

上传人:宝路 文档编号:3418483 上传时间:2017-08-04 格式:PPT 页数:27 大小:3.72MB
返回 下载 相关 举报
ASPC#命名空间和基类库初步copy_第1页
第1页 / 共27页
ASPC#命名空间和基类库初步copy_第2页
第2页 / 共27页
ASPC#命名空间和基类库初步copy_第3页
第3页 / 共27页
ASPC#命名空间和基类库初步copy_第4页
第4页 / 共27页
ASPC#命名空间和基类库初步copy_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《ASPC#命名空间和基类库初步copy》由会员分享,可在线阅读,更多相关《ASPC#命名空间和基类库初步copy(27页珍藏版)》请在金锄头文库上搜索。

1、C#命名空间和基类库初步,2,回顾,重写和多态抽象基类是专用于继承(一般包含没有实现的方法)的类。不能创建抽象基类的新实例。接口是纯抽象基类。它只能包含抽象方法,而不包含方法实现。一个类可以实现多个接口。,3,讲议,解释命名空间创建自定义的命名空间讨论命名空间命名的类型使用命名空间指令为命名空间创建别名了解 .NET 基类库,4,命名空间,命名空间是类或其它C#对象的逻辑分组。用于避免命名冲突专用于组织代码当代码要在其他某个应用程序中重用时,可以降低复杂性,5,声明命名空间,与类的声明过程相似语法 namespace NameSpaceName /此处列出该命名空间的全部类! ,6,声明命名空

2、间,class SamsungTelevision.class SamsungWalkMan.class SonyTelevision.class SonyWalkMan.,namespace Samsung class Television . class WalkMan .namespace Sony class Television . class Walkman .,使用命名空间解决命名冲突更简洁、更有条理、结构更清晰,7,嵌套命名空间,在一个命名空间内声明另一个命名空间,.namespace Sony namespace Television class T14inches . cl

3、ass T21inches . .,.namespace Sony.Televisionclass T14inches.class T21inches .,第二种命名空间的方法在C#中可用,在C+中是不可用的,8,访问修饰符和命名空间,命名空间是隐式公共的命名空间不能为受保护的、私有的或内部的,.public namespace Sony /错误.private namespace Samsung /错误.,在声明命名空间时前面不应加任何访问修饰符,9,限定命名,要在类所属的命名空间内使用该类,只需要指定该类的名称要在类所属的命名空间之外使用该类,必须使用该类的完全限定名来引用它 Namesp

4、ace.class,10,非限定命名,namespace Sony class Television . class WalkMan . Television MyEntertainment = new Television(); . ,在类所属的命名空间内使用该类时,只需指定类名,这称为“非限定名称”,11,限定命名 - 示例,using Sony;using Samsung;using System;namespace Sony namespace Television class T14inches public T14inches() Console.WriteLine (一台 14

5、英寸的电视机); class T21inches public T21inches() Console.WriteLine (一台 21 英寸的电视机); ,namespace Samsung class Television Sony.Television.T14inches myEntertainment = new Sony.Television.T14inches(); class Test static void Main() Samsung.Television myEntertainment = new Samsung.Television(); ,限定命名是在类名称前加上点操作

6、符和名称空间,12,using 导入命名空间指令,使用限定命名会使代码变长且容易混淆 使用 using 命名空间指令可以使长且容易混淆的名称变得简短而且有意义,.Sony.Television.T14inches Television = new Sony.Television.T14inches();.,using Sony.Television;T14inches Television = new T14inches();T21inches Television2 = new T21inches();,13,有效和无效的命名空间声明,14,二义性名称,using Sony;using Sa

7、msung;class Test static void Main() Television MyEntertainment = new Television(); ,这会导致错误,因为Sony,Samsung命名空间都有Television类,程序中不知调用哪个命名空间的类,类名称存在二义性。,15,二义性名称,using Sony;using Samsung;class Test static void Main() Samsung.Television MyEntertainment = new Samsung.Television(); ,在类名存在二义性的情况下,只能像代码段中那样使

8、用限定的命名空间,16,using 别名指令,using别名指令提供了一种功能,可以从命名空间中只提取一个类,并将其放入作用域中,using T21inches = Sony.Televisions.T21inches;class Test static void Main() T21inches M = new T21inches(); ,using 别名名称 = 到命名空间或类的完全限定路径,17,基类库,是预先编写的代码的集合,这些代码可以很容易地合并到应用程序中,并在应用程序中加以使用基类库可以被所有 .NET 支持的语言共享根据其功能,BCL 中的类被归类到相应的命名空间中,18,常

9、用的命名空间和类,19,命名空间 System.Array,提供用于操纵数组的类和方法,using System;class Test static void Main() int arrayToReverse= 1,2,3,4,5,6,7; Console.WriteLine(反转前数组的内容:n); displayArray(arrayToReverse); Array.Reverse(arrayToReverse); Console.WriteLine(nn反转后数组的内容:n); displayArray(arrayToReverse); ,public static void dis

10、playArray(Array myArray) foreach(int arrValue in myArray) Console.WriteLine(arrValue); ,public static void displayArray(Array myArray) foreach(int arrValue in myArray) Console.WriteLine(arrValue); ,20,命名空间 System.Array,上示例的输出结果,21,命名空间 System.Array,命名空间 System.Array 其他方法,22,System.Collections.ArrayL

11、ist类,提供了用于操纵与普通数组略有不同的一维数组的方法。可以动态添加数据。示例,23,System.Collections.HashTable,和ArrayList功能相似,但存储的是键值对的列表。通过主键访问值,主键不能重复。示例,24,命名空间 System.IO,提供了大量用于文件/流的输入/输出的类 示例,25,命名空间 System.IO,示例,using System;using System.IO;class Test static void Main(string args) Console.WriteLine(创建目录 C:Sample .);Directory.Crea

12、teDirectory(c:Sample); DateTime creationDate = Directory.GetCreationTime(c:Sample); Console.WriteLine(目录创建于: + creationDate.ToString(); ,26,命名空间 System.IO,其他重要的类,27,总结,除了可以避免命名冲突外,命名空间也被设计成帮助组织代码的元素。命名空间可以进行嵌套。命名空间是隐式公共的。完全限定名是在类的名称之前加上包含该类的命名空间和一个点操作符。使用“using 命名空间指令”,可以在不使用限定名的情况下,在类的命名空间之外使用这些类。using 命名空间指令必须在所有成员声明之前被声明。,

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

当前位置:首页 > 高等教育 > 大学课件

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