我面临的情况是我有一个基类
public class BaseClass
{
public string SomeVal { get; set; }
public BaseClass(string someVal)
{
this.SomeVal = someVal;
}
}
以及另外两个使用基类的构造函数从基类继承的类
public class ClassA : BaseClass
{
public ClassA(string someVal) : base (someVal)
{
}
}
public class ClassB : BaseClass
{
public ClassB(string someVal) : base (someVal)
{
}
}
ClassA
类型或
ClassB
SomeVal
价值观。
我试过这么做
public static void func<T>(T className)
{
className.SomeVal = "Hello World";
}
但显然编译器不知道SomeVal是什么,我也试过了
public class ClassA<T> : BaseClass
但仍然在同一点上,它不知道什么
某地
甲级
在代码中不再处理错误
Using the generic type 'ClassA<T>' requires 1 type arguments
我也考虑过为我需要的功能重载,但是对于我的场景来说,这可能会变得很乏味,因为我有多个继承自的类
BaseClass
,我要创建的方法也不是很大