Abstract(抽象)

来源:互联网 发布:协作办公平台 知乎 编辑:程序博客网 时间:2024/06/02 19:40

Abstract(抽象):可以和类、方法、属性、索引器及事件一起使用。在类声明中使用abstract修饰符以指示某个类只能是其他类的基类。标记为抽象类或包含在抽象类中的成员必须通过从抽象类派生的类来实现。

抽象类具有以下特性:

1)抽象类不能实例化。

2)抽象类可以包含抽象方法和抽象访问器。

3)不能用sealed修饰符修符抽象类,这意味着抽象类不能被继承。

4)从抽象类派生的非抽象类必须包括继承的所有抽象方法和抽象访问器的实实现。

在方法或属性声明中使用abstract修饰符以指示方法或属性不包含实现。

抽象方法具有以下特性:

1)抽象方法是隐式的虚方法。

2)只允许在抽象类中使用抽象方法声明。

3)因为抽象方法声明不提供实际的实现,所以没有方法体;方法声明只是以一个分号结束,并且在签名后没有大括号 ({ })

4)实现由一个重写方法override提供,此重写方法是非抽象类的一个成员。

5)在抽象方法声明中使用staticvirtual 修饰符是错误的。

除了在声明和调用语法上不同外,抽象属性的行为与抽象方法一样。

1)在静态属性上使用abstract修饰符是错误的。

2)在派生类中,通过包括使用override修饰符的属性声明,可以重写抽象的继承属性。

抽象类必须为所有接口成员提供实现。

实现接口的抽象类可以将接口方法映射到抽象方法上。

 

原创粉丝点击