抱歉,这个问题没有得到任何时髦的标题。
我被告知 .Net(C#) 不支持Multiple Inheritance。但是看看下面的 foo 例子,我想知道这真的是真的吗?
class fooList
{
public int Index()
{
return 0;
}
}
class foo : fooList
{
public foo()
{ }
}
class testFoo
{
void test()
{
foo obj = new foo();
// From object
obj.Equals(obj);
obj.GetHashCode();
obj.GetType();
obj.ToString();
// From fooList
obj.Index();
}
}
正如我们所看到的,我有一个类fooList
和一个根据说法foo
继承的类fooList
(C#不支持多重继承),类的对象foo
应该只有一个Index()
来自fooList
类的方法,但它有更多来自对象的方法班级。它清楚地表明默认情况下所有类都继承object
类。所以问题就来了
- C# 不支持多重继承真的完全正确吗?
- 我猜它在 CLR 级别支持它,而不是为什么它在编码中不支持它?