原创 C# 模拟多继承收藏

新一篇: 换Blog地址了,哈哈 | 旧一篇: Unhandled exceptions cause ASP.NET-based applications to unexpectedly quit in the .NET Framework 2.0

class A
{
    m1();
}

interface IB
{
    m2();
}

class B : IB
{
    m2();
}

class C : A, IB
{
    B BObject;
    m1();
    m2() { BObject.m2(); }
}
class D : C
{


m1();
m2();
}
方法访问限制修饰自己加。。。^_^

发表于 @ 2006年04月02日 00:06:00|评论(loading...)|编辑

新一篇: 换Blog地址了,哈哈 | 旧一篇: Unhandled exceptions cause ASP.NET-based applications to unexpectedly quit in the .NET Framework 2.0

评论

#sp1234 发表于2006-04-03 11:51:00  IP: 211.136.92.*
最基本的差别是:使用接口委派的方法不能自动继承。也就是说 class D这种再也不是真正的class,其方法 m2() 不能 override 了,它也不具有兼容 IB 类型的多态功能了!

如果要使上述两条实现,就需要“手工”写一大堆,而这在大量类型逐步继承扩展的系统中就非常难受。

结论就是一句话:这个模拟很难受,离多继承差的很远。
#yezie 发表于2006-04-10 09:08:00  IP: 220.186.28.*
我也觉得太复杂了,自己都看晕了,嘿嘿
发表评论  


当前用户设置只有注册用户才能发表评论。如果你没有登录,请点击登录
Csdn Blog version 3.1a
Copyright © yezie