漫谈.Net关键字系列之一Sealed与Final
Sealed与Final修饰符其实并不是一个语言平台的产物,他们有着各自所属的语言环境,但这两个关键字都是.Net平台中不可或缺的,那么二者用法几何,随本文一探究竟。
一.Sealed
sealed 修饰符可以应用于类、实例方法和属性。用于类时,该类被称为密封类,密封类不能被继承;用于方法时,该方法被称为密封方法,密封方法会重写基类中的方法;sealed修饰符应用于方法或属性时,必须始终与override一起使用;结构是隐式密封的,因此它们不能被继承。
● 描述方法:
//Error: cannot be sealed because it is not an override
public sealed string func()
{
return "";
}
//OK
public sealed override string func()
{
return "";
}
● 继承中的方法:(TestChild2中无法重写任何方法)
●描述属性:
public sealed override double Hours
{
get { return 0.1; }
set { }
}
●描述变量:
//Error The modifier 'sealed' is not valid for this item
sealed override string a;
●描述接口:
interface