【问题标题】:Successor of int32int32的继任者
【发布时间】:2010-05-19 10:25:36
【问题描述】:

什么是 C# 中 int32 的直接继承者?是int还是int16?

继承是指给定class A : B {},那么A类是我的类,B类是我继承的类。

【问题讨论】:

  • 你能解释一下“继任者”是什么意思吗?
  • 你能解释一下“继承者”是什么意思吗?
  • class A : B {} class A 是我的类,class B 我的意思是继承者——它是我继承的类
  • 你问的是int32的基类吗?这似乎是你在说什么。在这种情况下,Jon Skeet 的回答是正确的。

标签: c# int


【解决方案1】:

假设你在谈论继承(不是很清楚)......

System.ValueType,有效 - 或没有,取决于您的观点。

注意intSystem.Int32是同一个类型;第一个是另一个的别名。

值类型(例如int)隐式继承自System.ValueType(或System.Enum),不能从其他任何类型继承。

【讨论】:

    【解决方案2】:

    基本类型是ValueType
    此外,它还实现了接口IComparableIComparable<int>IConvertibleIEquatable<int>IFormatable

    【讨论】:

      【解决方案3】:

      不确定这个问题,但 C# 具有以下数据类型:

      System.Int16(可以使用关键字short),16bit

      System.Int32(可以使用关键字int),32位

      它们是值类型,所以它们都不能从System.ValueType以外的任何东西继承,两者之间没有继承关系。

      【讨论】:

        【解决方案4】:

        关键字intSystem.Int32 的别名。由于System.Int32 是一个结构,它没有子类型。像所有结构一样,它的直接超类型是System.ValueType(它本身具有超类型System.Object。)

        Int16(也称为关键字short)也是一个结构体,因此没有子类型,而超类型System.ValueType。它与intInt32 没有类型关系。

        【讨论】:

          【解决方案5】:

          来自MSDN

          所有值类型都隐式继承自 System.ValueType 类,其中,在 转,继承自类对象。

          虽然我不确定我是否很好地理解了你的问题。如果您正在寻找 Int32 的孩子,我认为没有 here 所示。

          【讨论】:

            【解决方案6】:

            我不明白这个问题,但int 只是Int32 的别名,所以通过消除过程,您的问题的答案可能是int16

            【讨论】:

              猜你喜欢
              • 2011-01-04
              • 1970-01-01
              • 1970-01-01
              • 2020-06-29
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多