申し訳ありませんが、質問のファンキーなタイトルを取得できませんでした。
.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
継承するクラスがあることがわかるように(C#は多重継承をサポートしていません)、クラスのオブジェクトには、クラスからのメソッドが1つだけある必要がありますが、オブジェクトからのメソッドがさらにありますクラス。デフォルトでは、すべてのクラスがクラスを継承することを明確に示しています。それで疑問が生じますfooList
foo
Index()
fooList
object
- C# が Multiple Inheritance をサポートしていないというのは本当に完全に本当ですか?
- CLRレベルでサポートしていると思いますが、コーディングでサポートしていないのはなぜですか?