在扩展父类并实现接口的泛型类上添加类型约束

问题描述 投票:0回答:1

在下面的类层次结构中,如何为

T
(
where T : class, new()
) 定义类型约束?

abstract class AbstractComponent<T> : Parent, IComponentType, IRelationship
{}

class ChildComponent : AbstractComponent<CarComponent>
{}
c# .net generics refactoring
1个回答
0
投票

不太清楚你的意思

在下面的类层次结构中,如何为 T 定义类型约束(其中 T : class, new())?

虽然您可以简单地添加

where T : class, new()
但如果您无法弄清楚将
where T : class, new()
放在哪里,它应该是这样的:

abstract class AbstractComponent<T> : Parent, IComponentType, IRelationship
where T : class, new() {}
© www.soinside.com 2019 - 2024. All rights reserved.