public sealed interface IMyInterface
{
}
显示“此项不允许使用修改后的 'sealed'”
我可以理解接口必须是可以派生的,否则类无法实现该接口。
但为什么我不能指定一个接口不应该有子接口定义呢?或者说是否有另一种方法能够实现这个功能,只是不用sealed
关键字而已?
编辑
我应该努力解释一下为什么我需要这个。我经常看到接口继承链,而开发人员应该使用组合。在类中,sealed
非常适合此类情况,因此我想知道是否有一种方法可以强制接口也遵循这样的规则。我认为,不必要的继承会使重构和维护变得更加困难。
编辑2
考虑到评论和帖子,接口继承树不可能像对象继承树那样复杂。因为当你从另一个接口IX
派生时,你所说的只是“还必须实现IX
”。禁止这样做没有任何好处。