kof*_*cii 3 c# design-patterns coding-style
如何在不使用接口的情况下模拟C#中的多重继承.我相信,接口能力不适用于此任务.我正在寻找更多'设计模式'导向的方式.
就像Marcus说的那样使用界面+扩展方法制作类似mixins的东西可能是你目前最好的选择.
另请参阅:使用Bill Wagner创建具有接口和扩展方法的Mixins 示例:
using System;
public interface ISwimmer{
}
public interface IMammal{
}
class Dolphin: ISwimmer, IMammal{
public static void Main(){
test();
}
public static void test(){
var Cassie = new Dolphin();
Cassie.swim();
Cassie.giveLiveBirth();
}
}
public static class Swimmer{
public static void swim(this ISwimmer a){
Console.WriteLine("splashy,splashy");
}
}
public static class Mammal{
public static void giveLiveBirth(this IMammal a){
Console.WriteLine("Not an easy Job");
}
}
Run Code Online (Sandbox Code Playgroud)
打印splasshy,splashy不是一件容易的事