我有几个概念上属于一层的类。它们没有共同的属性,这就是为什么它们不需要从某些基类继承的原因。
我还有一些处理这些类的方法。其中一些是以下样式的模板:
public SomeClass
{
public void SomeMethod<T> (T argument) where T : BaseClass
{
/* Do something */
}
}
所以我使用这个 WHERE 关键字只是为了保护代码(我想是来 self 自己),这样我就不会错误地向这个方法提供其他东西。
自然而然地,我让那些其他类派生自 BaseClass,它是空的并且除了对其他类进行分组之外没有其他目的(至少目前是这样)。
这可能不是什么好方法,但无论如何我都在使用它。
有更好的方法吗?
编辑:经过考虑,我决定不采用这种方法,只是删除了该基类。没有它就足够了。无论如何,我无法使代码绝对完美,不需要的东西越少越好。
最佳答案
使用标记(空)接口(interface)而不是基类:
public void SomeMethod<T> (T argument) where T : ISomeInterface
关于c# - 使用空父类只是对其他类进行分组。有更好的方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/807401/