C#中说所有类型的基类都是Object,就像结构,枚举这种类型的基类都是Object
而且这些类型的一些方法,如:GetType(),Equals,等方法后面都说明是从Object
类继承的,
但是Struct类型不是不能继承类吗?
具体是怎么回事,有能解释一下的吗?谢谢了

解决方案 »

  1.   

    Struct, enum 是不可以人另一个struct,enum继承定义一个struct时是从System.ValueType下继承来的
    enum如果定义时不指定基类默认是从System.Int32继承
      

  2.   

    楼上的,你还是没解释清楚吧
    定义一个struct时是从System.ValueType下继承来的?
    ValueType是一个类
    struct怎么能继承类呢?
      

  3.   

    但是Struct类型不是不能继承类吗==========struct 声名的类型,编译器隐式自动从 System.ValueType 继承
      

  4.   

    有能解释清楚的吗?不要向楼上的那几位就会什么 看联机文档,MSDN什么的,没什么实际性的解释
    我就是因为看了文档之后才有的一些疑惑
      

  5.   

    struct 声名的类型,编译器隐式自动从 System.ValueType 继承?就这么简单的原因吗?我们不能用struct继承class,编译器会自动继承?
      

  6.   

    struct属于值类型。
    System.ValueType是值类型基类
    自己在定义struct时只能从接口继承,如果从类继承会报错
    至于System.ValueType是编译器隐式加上的
      

  7.   

    我们不能用struct继承class,编译器会自动继承?
    -------------------------
    就是这个样子,用struct声明的东西,其实只是一种特殊的类。
      

  8.   

    谢谢大家的解释阿,那顺便问一下,System.ValueType类是不是继承Object类的?
      

  9.   

    struct属于值类型。
    System.ValueType是值类型基类
    ------------------------------
    ls正解System.ValueType是.NET中所有值类型的基类 一切值类型的都是从此而出lz也可以在对象浏览器中去看看就很清楚架构了
      

  10.   

    struct不能继承于任何东西,但可以实现接口。楼主自己看东西不仔细。
    因为struct的基类型永远是ValueType,而从ValueType派生的所有类型都是值类型的(Enum除外),但ValueType本身是引用类型的,ValueType类型是一个特殊的类型。
      

  11.   

    System.ValueType类是不是继承Object类的?---------------------------------------public class Object
        System 的成员摘要:
    支持 .NET Framework 类层次结构中的所有类,并为派生类提供低级别服务。这是 .NET Framework 中所有类的最终基类;它是类型层次结构的根。
      

  12.   

    public abstract class ValueType
        System 的成员摘要:
    提供值类型的基类。
      

  13.   

    哈哈,谢谢大家的讨论,现在在看.NET类库,只是有的东西说的不是很清楚,当时可能是我没找到地方。
    所以找大家讨论一下了!
    谢谢!!!!
      

  14.   

    struct属于值类型。 
    System.ValueType是值类型基类