题
我正要从BitmapImage的类继承时,我注意到它是密封的,我身边有一个快速的样子,但我找不到它是密封的理由。
任何身体知道这是为什么?
由于
解决方案
的BitmapImage 是最有可能的密封的,因为它具有特定的使用场景中它的设计,它意味着是:
这是用于使用可扩展应用程序标记语言(XAML)。加载图像优化的专门的BitmapSource
通过使密封类,这使得可以更安全地从XAML中使用,因为XAML分析器将永远知道到底是怎么回事要创建。
如果你想编写你自己的,你应该从的的BitmapSource 代替,这是抽象的,并且意在被继承。
其他提示
有启封类是说:“我希望人们从这种类型的继承”的等价物。这使人们从它是否是一个好主意(见众多StackOverflow的问题,人们从List<T>
继承为例)的类型继承。
由于难免让人将继承它,这意味着你必须设计一个类被继承了。这确实有后果,并不会在这两个开发和测试时间的增加成本。这种类型的作者可能不想做这个工作还是有它不是继承的原因,并决定将密封型
特别开发类库时,除非你专门为继承而设计,你暴露在外的类应该是默认的密封。如果类的用户希望在未来的某个时刻,继承,那么它很容易和非破开封类。
如果您启封类开始时,你绝对不能回去。
不隶属于 StackOverflow