抽象类
1、抽象类用abstract关键字声明
2、抽象类不能被实例化
3、一个类继承抽象类,但没有实现抽象方法,则这个类也只能定义为抽象类
4、抽象类可以含有抽象的方法/属性,也可含有非抽象的方法/属性
5、virtual声明的虚方法可以含有实现
6、抽象方法的关键字abstract
7、虚方法和抽象方法的实现使用override关键字
接口
1、接口由interface关键字定义
2、接口内定义未实现的方法和结构,定义的方法和结构不添加访问修辞符
3、继承至接口的类型(class)需要完成所有的虚方法/结构
3、对象级别调用接口成员
as关键字:obj as class/interface 验证通过返回一个class/interface的对象,否则返回空引用null
is关键字:同as类似,不过返回值不一样。验证通过返回true,未通过返回false
()显示转换: (class/interface)obj ,防止转换失败 应放置在try/catch中
4、在继承类的对象级隐藏继承的接口方法:在实现方法前加 Ixx. 为前缀
5、接口作为参数
6、接口作为返回值
7、接口类型数组
8、显式接口实现,解决命名冲突(加Ixx. 接口前缀)
9、接口层次结构
10、接口类型多重继承(保障基本方法实现、显式接口实现多个同名方法)