- 1、本文档共36页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于C的.NET Framework程序设计 - 20090328200029
基于C#的 .NET Framework程序设计 第10章 数据流和文件 第11章 Internet访问 第12章 序列化 第13章 远程处理和XML Web Service 第14章 线程和异步编程 第15章 托管代码与非托管代码之间的互操作 第16章 使用Microsoft ADO.NET 访问数据 第17章 属性 第6章 类型的使用 System.Object 类的功能 特殊构造函数 类型操作 接口 管理外部类型 System.Object类的功能 哈希代码 对象标识 对象比较 描述类实例的文本字符串 哈希代码 哈希代码被用来支持快速查询 重写 System. Object的GetHashCode方法时 必须为有相同值的对象返回相同的哈希代码 必须用高效率的方法来实现 哈希代码 (续) 在选择生成哈希代码算法时遵循的一些指导性原则 使用高效的随机分配算法 算法中可以调用基类的 GetHashCode 方法,但不要调用Object 和 ValueType 类的 GetHashCode 方法 算法中至少要用到一个成员字段 理想情况下,算法中用到的字段是不可变的 让算法尽可能的快 有相同值的对象要返回相同的哈希代码 对象标识 每个对象都有一个独一无二的标识 和VC++中用内存地址来决定对象的标识类似 用Object.ReferenceEquals方法来测试两个引用是否指向同一个对象,就是说,是否有相同的标识 对象比较 比较两个对象来确定他们是否相等 重写Equals方法 提供 == 和 != 运算符 指导原则 如果要重写Equals方法,则必须重写 GetHashCode 方法 如果要重载==,用相同的算法重写 Equals方法 如果要实现 Icomparable 接口,则必须要实现Equals方法 保证 Equals 和 GetHashCode 方法不抛出异常 描述类实例的文本字符串 重写ToString方法来自定义对象的可读字符串内容 用IFormattabl 接口和format方法来实现本地化字符串 第6章 类型的使用 System.Object 类的功能 特殊构造函数 类型操作 接口 管理外部类型 特殊构造函数 静态构造函数 私有构造函数 静态构造函数 被用来初始化静态成员 在中间语言中名字为.cctor 静态构造函数(续) 静态构造函数没有类似“private”或者“ public”的修饰符 它只能用来初始化静态变量,而不能用来初始化实例变量 当内联地初始化静态成员变量时 当类没有提供显式的静态构造函数时,静态构造函数被隐式创建,并在其内初始化静态变量 当类显式提供了静态构造函数时,则内联地初始化被编译到显示构造函数中去,并且首先被执行 私有构造函数 用来防止类被实例化 用来实现所有成员都是静态的类 用protected构造函数来使所有成员都是静态的类可以被继承 第6章 类型的使用 System.Object 类的功能 特殊构造函数 类型操作 接口 管理外部类型 类型操作 类型转换 强制转换 装箱 类型转换 当一种类型的值被赋给另一种类型的变量时发生类型转换 显式类型转换 显式类型转换不会发生编译时错误,但有可能发生运行时异常 收缩类型转换必须是显式的 类型转换(续) 隐式类型转换 转换操作符 强制转换 从派生类到基类的转换 从基类到派生类的转换 强制转换(续) 用Is和TypeOf操作符进行对象类型检查 转换接口 装箱 把值类型转换成引用类型时发生装箱 System.Object的实例被分配在堆上 值类型被拷贝到新的对象 取消装箱发生在从Object对象中把值类型重新取回来时 在循环中发生装箱和取消装箱操作的代价是很高的 第6章 类型的使用 System.Object类的功能 特殊构造函数 类型操作 接口 管理外部类型 接口 继承需考虑的事项 显式接口的实现 继承需考虑的事项 继承多个接口 从多个接口继承生成新的接口 实现接口的基类 当一个派生类的实例被转化为接口时,则该接口的方法调用发生在实现该接口的类上 显式接口的实现 类和接口的可访问性对比 用显示接口实现 当接口和实现类的成员实现名称会被混淆时 当继承自有重名的多个接口时 第6章 类型 System.Object 类的功能 特殊构造函数 类型操作 接口 管理外部类型 管理外部类型 平台调用服务 COM互操作性 平台调用服务 也叫做PInvoke 用DllImport属性从外部DLL中导入API函数 COM互操作性 使 .NET Framework类库对COM可用 必须创建COM可调用包(CCW) 用Tl
文档评论(0)