黑马程序员技术交流社区
标题:
sealed关键字
[打印本页]
作者:
徐阳
时间:
2012-9-20 11:09
标题:
sealed关键字
sealed 修饰符表示密封
用于类时,表示该类不能再被继承,不能和 abstract 同时使用,因为这两个修饰符在含义上互相排斥
用sealed 修饰的类中的方法是否一定要用override修饰?
作者:
许庭洲
时间:
2012-9-20 13:11
当应用于方法或属性时,sealed修饰符必须始终与override一起使用。
作者:
王伟(wangwei)
时间:
2012-9-20 13:43
sealed
sealed修饰符可以应用于类、实例方法和属性。密封类不能被继承;密封方法会重写基类中的方法,但其本身不能在任何派生类中进一步重写。当应用于方法或属性时,sealed修饰符必须始终与override一起使用。
在类声明中使用sealed修饰符可防止继承此类;将密封类用作基类或将abstract修饰符与密封类一起使用是错误的;结构是隐式密封的,因此结构不能被继承。
override
要扩展或修改基类的方法、属性、索引器或事件的抽象实现或虚拟实现,必须使用override修饰符。
overide方法提供从基类继承的成员的新实现。通过override声明重写的方法称为重写基方法。重写的基方法必须与override方法具有相同的签名。
不能重写非虚方法或静态方法,重写的基方法必须是virtual、abstract或override的。
override声明不能更改virtual方法的可访问性。override方法和virtual方法必须具有相同的访问级别修饰符。
不能使用修饰符new、static、virtual或abstract来修改override方法。
重写属性声明必须指定与继承属性完全相同的访问修饰符、类型和名称,并且被重写的属性必须是virtual、abstract或override的。
所以说sealed 修饰的类中的方法应用时是一定要用override修饰
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2