• object类


    前面提到,所有的.NET类都派生自system.object 实际上,如果在定义类时没有指定基类,编
    译器就会自动假定这个类派生自object。对于结构,这个派生是间孝的:结构总是派生自system.ValueType,

    systm.ValueType又派生自system.object。

    其实际意义在于,除了自己定义的方法和属性等外,还可以访问为object定义的许多公有的和
    受保护的成员方法。这些方法可用于自己定义的所有其他类中。

    System.Object()方法

      ToString()方法:是获取对象的字符串表示的一种便捷方式。当只需要快速获取对象的内容,
    以进行调试时,就可以使用这个方法。在数据的格式化方面,它几乎没有提供选择:例如,
    在原则上日期可以表示为许多不同的格式,但DateTime.ToString()没有在这方面提供任何选
    择。如果需要更复杂的字符串表示,就应实现IFormattable接口。
      GetHashTable()方法:如果对象放在名为映射(也称为散列表或字典)的数据结构中,就可以使用这个方法。

    处理这些结构的类使用该方法确定把对象放在结构的什么地方。

    如果希望把类用作字典的一个键,就需要重写GetHashTable()方法

      Equals()(两个版本)和ReferenceEquals()方法:如果把3个用于比较对象相等性的不同方法组
    合起来,就说明.NET Framework在比较相等性方面有相当复杂的模式。这3个方法和比较
    运算符“==” 在使用方式上有微妙的区别。而且,在重写带一个参数的虚Equals()方法时也
    有一些限制,因为system.collections 名称空间中的一些基类要调用该方法,并希望它以特
    定的方式执行。
      Finalize()方法:它最接近C‖风格的析构函数,在引用对象作为垃圾被回收以清理资源时调用它。

    Finalize()方法的object实现方式实际上什么也没有做,因而被垃圾收集器忽略。
    如果对象拥有对未托管资源的引用,则在该对象被删除时,就需要删除这些引用,此时一般要重写Finalize()。
    垃圾收集器不能直接删除这些对未托管资源的引用,因为它只负责托管的资源,于是它只能依赖用户提供的Finalize()。
      GetType方法:这个方法返回从system.Type派生的类的一个实例。这个对象可以提供对

    象成员所属类的更多信息,包括基本类型、方法、属性等。sysm.Type还提供了.NET的
    反射技术的入口点。

    MemberWiseClone()方法:它只复制对象,并返回对副本的一个引用(对于值类型,就是一个装箱的引用)。注意,得到的副本是一个浅表复制,即它复制了类

    中的所有值类型。如果类包含内嵌的引用,就只复制引用,而不复制引用的对象。这个方法是受保护的,所以不能用于复制外部的对象。该方法不是虚方法,所以不能重写它的实
    现代码。

  • 相关阅读:
    JS打印代码示例
    javascript图片360°旋转
    动态载入/删除/更新外部 JavaScript/Css 文件
    AviSynth入门与应用指南
    汇编64讲(搞免杀、破解必看)在线观看
    C#模拟登录总结
    同时使用apache和IIS,共用80端口的一个解决方案
    Dos命令集合
    批处理for命令详解
    JavaScript定义类的几种方式
  • 原文地址:https://www.cnblogs.com/miffylf/p/4005712.html
Copyright © 2020-2023  润新知