c# - 使用另一个类实例访问类方法?

标签 c# asp.net oop reflection

我有一个动态调用类并使用该类的方法的需求。

public class A
{
  public void test()
  {
  }
}

public Class B
{
  public void test()
  {
  }
}
class object intermediate
{
//here will decide which class to be invoked
//return the invoked class instance
}

class clientclass
{
intermedidate client=new intermediate();
}

所以我可以在实例client 中访问被调用类的方法。 我正在使用 Framework 3.5。如果子类继承自中间类,是否可以实现?我不想在这里反射(reflection)。

最佳答案

您可以像下面那样(未验证)

interface I
{
}
class A :I
{
}

Class B:I
{
}
class intermediate
{
    public I GetInstance(int i)
    {
        if(i==1)
           return new A();
        else
            return new B(); 
    }

}
class clientclass
{
      I client=new intermediate().GetInstance(1);
}

关于c# - 使用另一个类实例访问类方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25787038/

相关文章:

c# - 如何在 C# 中将字典的子集提取到另一个字典中?

c# - 优化多个网页的下载。 C#

asp.net - ASP.NET 是否将所有程序集从 bin 加载到 AppDomain 中?

c# - 在 asp.net 中缓存(输出)?

c# - 添加一个参数,还是创建一个新方法?

javascript - 使用 var 和函数声明 javascript 对象有什么区别?

c# - TCP连接丢失在C#中的问题

C# 域模型 + 存储库 : Where to put code that loads an entity

javascript - jQuery 或 javascript 中是否有 'if (!Page.IsPostBack)' 之类的东西?

PHP-FFMpeg 先决条件