我有一个看起来很傻的问题。在基本 Object Type 上定义 ToStrin()、GetHashCode()、GetType() 等方法背后是否有任何特定原因。 .Net 框架是否出于任何目的在内部使用这些方法。只是想知道这个设计背后的想法。
谢谢, 扫一扫
最佳答案
这些方法被认为是所有对象所需的最低要求。通过将它们引入 System.Object
类,它们可用于 .NET 中的所有对象。
各有各的用途:
Equals
和ReferenceEquals
用于相等检查GetHashCode
允许在哈希集合中使用对象GetType
是反射工作所必需的ToString
允许所有对象,无论类型如何,都以字符串形式表示,这是非常有用的Finalize
允许垃圾收集器正确处理资源MemberwiseClone
允许生成对象的浅拷贝
关于c# - 对象类型具有 ToString()、GetHashCode()、GetType 等方法的原因是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4622068/