这个,Class1 或 Class2的方法都改了,你在Class3里面的代码也要改吧,再多改一个接口也不算过分

解决方案 »

  1.   

    接口是用来约束类的
    而不是用类来约束接口的这点很重要.我觉得你既然修改不了Class1和Class2,C#又没有多重继承,那怎么做都是徒劳.
      

  2.   

    我说的解决方法可能有些奇怪,即为什么 Class3 需要继承于 Interface1 和 Interface2?其实Class3 不需要继承于这两个接口也可以的。我之所以要这样做,是因为这是一个 .Net Remoting 程序,我希望在客户端只是引用包含了这两个接口声明的配件,具体的类实现在另外的配件库中,而我不会在客户端分发这个包含了具体类实现的配件库。
      

  3.   

    实际上我还需要申明 Interface3 继承于 Interface1 和 Interface2,然后在客户端分发包含了Interface3 的配件库,而不分发 Class3 的具体实现。也就是说,Interface3 在客户端成了 Class3 的客户端代理声明。在.Net Remoting 中,这是一个很常见的技术,也是接口的另外一个用途吧。
      

  4.   

    http://www.csdn.net/Develop/Read_Article.asp?Id=18257
    http://www.csdn.net/Develop/Read_Article.asp?Id=18256