我不知道它是否可能,但这就是我需要的。我正在玩弄一些东西,想知道它是否可能,因为您无法基于密封类型(例如 int、Int32、Int64 等)创建自己的数据类型。
我想创建一个由给定类型定义的顶级类,其中包含一些常见的东西。然后,将其派生为两个子类,但在这种情况下,每个类都基于 int 或 Int64 类型。从那个实例中,创建一个实例,并了解其参数引用/返回设置的类型基础。
因此,当我需要创建“ThisClass”的实例时,我不必知道它的类型基础是 int 还是 Int64,但 IT 将知道类型并能够允许使用 typed 调用方法/函数...这样,如果我想将我的 ThisClass 定义从 SubLevel1 更改为 SubLevel2,我不必绕着所有不同的数据类型定义跳舞。
希望这是有道理的..
public class TopLevel<T>
{
...
}
public class SubLevel1 : TopLevel<int>
{
...
}
public class SubLevel2 : TopLevel<Int64>
{
...
}
public class ThisClass : SubLevel1
{
...
public <based on the Int data type from SubLevel1> SomeFunc()
{
return <the Int value computed>;
}
}