1.接口的定义语法:
[修饰符] interface 接口名 extends 父接口1,父接口2 ...{
//定义常量
//方法定义
}
2.类实现接口的语法:
class 类名 extends 父类名 implements 接口1,接口2 ...{
//类成员
}
3.接口的特性:
i.接口不可以被实例化
ii.实现类必须实现接口的所有方法
iii.实现类可以实现多个接口
iiii.接口中的变量都是静态常量
4.只有抽象方法没有方法体
接口中所有的方法都是抽象方法
5.接口是一种能力,体现在接口的方法上
6.程序设计时:关心实现类有何能力,而不关心实现细节
面向接口的约定而不考虑接口的具体实现
7.接口之间,类之间可以实现继承
8.接口有比抽象类更好的特性:
i.可以被多继承
ii.设计和实现完全分离
iii.更自然的使用多态
iiii.更容易搭建程序框架
iiiii.更容易更换实现
9.接口表示一种约定,体现在接口名称和注释上:有些接口只有名称
方法的实现方式要通过注释来约定
10.接口的属性都是全局静态常量
接口中的方法都是全局抽象方法
接口中没有构造方法
11.类只能继承一个父类,但可以实现多个接口
非抽象类必须实现接口中的全部方法
12.抽象类利于代码复用,接口利于代码维护
13.面向接口编程意味着:开发系统时,主体构架使用接口,接口构成系统的骨架,这样就可以通过更换实现接口的类来实现更换系统。
14.C#中接口的成员主要是方法,属性
接口中不能包含常量,变量,构造方法和任何静态成员
定义接口时显示指定任何修饰符的非法的