【问题标题】:Is it necessary to explicitly inherit from object? [duplicate]是否有必要显式地从对象继承? [复制]
【发布时间】:2015-07-20 23:54:38
【问题描述】:

this MSDN example中,类显式继承自Object

class Point: Object {
   // ...
}

是否有必要从 Object 显式继承?也就是说,它不等同于以下内容吗?

class Point: Object {
   // ...
}

【问题讨论】:

  • class Point {}class Point: object {}class Point: global::System.Object {} 编译完全相同。 (可以想象一个疯狂的程序员会创建自己的类型,称为 Object。)
  • @stuartd,谢谢。不知道我怎么没听懂。投票结束。
  • 我想他们只是想让你知道它不是从其他类继承的。
  • @user2864740 我很确定他们创建了 C#
  • @RadioSpace MSDN 作者(可能极少数例外)绝对不是 C# 作者;并非所有 MSDN 示例或文章都非常出色。

标签: c# oop object inheritance


【解决方案1】:

不,它是隐式继承的。这就是为什么 C# 中的每个类都有 .ToString().Equals()

https://msdn.microsoft.com/en-us/library/vstudio/system.object%28v=vs.100%29.aspx 对象类:“这是 .NET Framework 中所有类的最终基类;它是类型层次结构的根。”

这种一切都从一个类派生的继承类型称为“统一类型系统”

【讨论】:

  • 我已接受您的回答。谢谢你。如果有人碰巧路过,here 是 Everything-inherits-Object 规则的例外。 (指针类型和接口类型没有。)
猜你喜欢
  • 2010-11-17
  • 2016-10-14
  • 1970-01-01
  • 1970-01-01
  • 2011-12-07
  • 1970-01-01
  • 1970-01-01
  • 2019-06-12
  • 1970-01-01
相关资源
最近更新 更多