sealed关键字:
官方描述:应用于某个类时,sealed 修饰符可阻止其他类继承自该类。 还可以对替代基类中的虚方法或属性的方法或属性使用 sealed 修饰符。 这使你可以允许类派生自你的类并防止它们替代特定虚方法或属性。
理解:
即密封,修饰类时此类不可被继承.修饰方法时此方法无法被子类重写,由于c#中想实现可重写方法时需要给其加上virtual关键字修饰(或者声明为抽象类),而重写的子类由override关键字修饰.因此sealed关键字只能用于被override修饰的方法.即引用场景为当你继承了并重写了父类的方法,又不希望孙类能重写父类的方法,就可以应用sealed关键字.
思考:
sealed有什么使用限制?
A:sealed 修饰符必须始终与 override 结合使用。
为何sealed不可以和virtual或者abstract联用?
A:因为没必要
父类方法被sealed修饰时,想在子类中声明同名方法该怎么办?
A:可以用new关键字修饰