抽象类,接口
电脑版发表于:2021/5/23 14:28
前言
抽象类是不完整的,它只能用作基类。在面向对象方法中,抽象类主要用来进行类型隐藏和充当全局变量的角色。
在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,
如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。
抽象类的特征
关键字:abstract
抽象类不能实例化。
抽象类可以包含抽象方法和抽象访问器。
不能用 sealed(密封) 修饰符修饰抽象类,因为这两个修饰符的含义是相反的。 采用 sealed 修饰符的类无法继承,而 abstract 修饰符要求对类进行继承。
从抽象类派生的非抽象类必须包括继承的所有抽象方法和抽象访问器的实际实现。
接口的特征
关键字:interface
接口是引用类型的,和抽象类的相似之处有三点:
不能实例化;
包含未实现的方法声明;
派生类必须实现未实现的方法,抽象类是抽象方法,接口则是所有成员(不仅是方法包括其他成员)。
抽象类里面可以有非抽象方法但接口里只能有抽象方法
声明方法的存在而不去实现它的类被叫做抽象类
不能有抽象构造函数或抽象静态方法