Suppose we are creating a generic control in .NET. E.g. a tree. I don't understand why people use this generic type definition
Control<T>
when in Object Oriented Programming I can use an abstract class or an interface:
Control<IItem> or Control<BaseClass>
So the only thing to do is that, their types must derive from that base class or implement the interface. Does it mean, that generic types are more convenient, because you I don't have to implement or inherit anything?