C#中的另一个新手问题。 即我:
namespace MyFunctions{
public class main{
public void SHOW(string str){
MessageBox.Show(str);
}
}
}
但是,我想将lib(rich)导入到另一个类中,例如:
namespace xyz{
use MyFunctions.main; // <--- something like that ??
public class A : ProgramBase{
public void message(){
SHOW("Hi");
}
}
}
如何制作它,因为我可以使这些类方法像本机方法(轻松调用)在另一个类中? (因为不允许多重继承......我不喜欢interface
,因为那时我必须把方法写两次。)
答案 0 :(得分:1)
你不能在C#中做多重继承,但你需要将这些方法用作本机方法,我可以想到两种方法:
用作外部库(或类只需创建新实例并使用类中的方法,它们将具有相同的确切方法名称,您可以通过继承包含该方法签名的接口来强制执行该方法。) / p>
用作扩展程序:
namespace MyFunctions{
public static class main{
public static void SHOW(this A src, string str){
MessageBox.Show(str);
}
}
}
或者,如果您的方法SHOW
并不关心调用它的类型,您可以将其设为通用:
public static void SHOW<T>(this T src, string str){
MessageBox.Show(str);
}
答案 1 :(得分:1)
不完全是,但您可以使用委托:
stdout