gpt4 book ai didi

C#:从基类静态方法确定派生对象类型

转载 作者:太空狗 更新时间:2023-10-29 22:04:23 25 4
gpt4 key购买 nike

在 C# 程序中,我有一个带有静态“Create”方法的抽象基类。 Create 方法用于创建类的实例并将其存储在本地以备后用。由于基类是抽象的,因此实现对象将始终派生自它。

我希望能够从基类派生一个对象,通过派生类调用静态Create方法(在基类中实现一次),创建派生对象的实例。

C# 语言中是否有任何工具可以让我完成此任务。我当前的备用位置是将派生类的实例作为参数之一传递给 Create 函数,即:

objDerived.Create(new objDerived(), "Arg1", "Arg2");

最佳答案

尝试使用泛型:

public static BaseClass Create<T>() where T : BaseClass, new()
{
T newVar = new T();
// Do something with newVar
return T;
}

示例使用:

DerivedClass d = BaseClass.Create<DerivedClass>();

关于C#:从基类静态方法确定派生对象类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/300181/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com