未密封的类允许其他的类从它那里进行继承。许多其他的可扩展性机制(如被保护的成员和虚拟成员)都需要一个未被密封的类。这些附加的机制添加了一种强大的方式来添加或自定义类型的功能,但是需要付出重大的代价。未被密封的类在许多开发情节中是有用的,即使它没有附加的可扩展性机制。
考虑把没有虚拟成员或被保护成员的未被密封的类当成一种主要的方式来提供廉价的,甚至是被增值的任务,并且可以扩展到框架中。
默认时,大部分的类都不应该是被密封的。这允许开发者基于他们的特殊情节来定制自己的类。例如,在一个类是未被密封的并且开发者能够为该类的派生类型而添加一个构造器,并且使用这个构造器把基类的属性初始化成情节中所必需的值的时候。当然,开发者同样也能够添加能够传递特定的情节默认值的重载方法。