1
6
(我原以为)你必须在(最多一个)基上使用“inherit” 班 . 您可以将“interface”用于要实现的任何接口。 因此,在IDisposable的情况下,它必须是“interface”。 编辑,好吧,编译器允许,但那可能是个错误,我看 编辑:事实证明,这可能是另一种错误,而且接口可能会迫使您使用“inherit”来继承其他接口,其思想是“inherited”成员在“implicit interface”意义上始终直接可见,而类上的“interface”声明是“explicit”接口,需要转换到该接口类型。PE使用这些成员。不管怎样,我们可能会在语言语法中消除这种灵活性,这样就只有一种方法来编写它,而不是两种等价的方法。 |
2
0
我倾向于将继承用于真正的OOP(即x isa y)和接口作为一种装饰器实现。 也许这不是一种得体的方式,但我们很喜欢。 我的意思是x将继承y,但是我们想从v、w和z赋予它一些额外的功能。 捷达是一辆汽车,但同时也是伊迪塞尔、伊格曼、伊博肯。 这正是我当前项目的方式,我可能会因为“滥用OOP”而被否决。 |
3
-1
如果您只打算使用抽象方法,那么应该使用接口。因为只能继承一个类,但可以实现多个接口。 |
Gabe Tucker · 无法在golang中分配接口对象指针 2 年前 |
randomDud · C#从另一个接口重写接口方法 2 年前 |
evilsushi · C#接口不允许成员类满足要求 6 年前 |