目录
认识一下java接口
public interface MyInterface {
public void foo();
//其他方法
}
java接口的特性
- 接口不可以被实例化
- 实现类必须实现接口的所有方法
- 实现类可以实现多个接口
- 接口中的变量都是静态常量
常作为类型使用
Java中的多继承
C#中的接口
[修饰符] interface 接口名 : 父接口1,父接口2, …… {
属性定义
方法定义
}
class 类名 : 父类名,接口1,接口2, …… {
}
语法对比
Java接口 | C#接口 | |
定义 | interface | interface |
实现 | implements | : |
静态方法 | 常量 | 无 |
public | 可以显示使用 | 不能显示使用 |
总结
java接口:
- 属性全都是全局静态常量
- 方法都是全局抽象方法
- 无构造方法
C#中接口:
- 成员主要是方法、属性
- 不能包含常量、变量、构造方法和任何静态成员
- 不能显式指定任何修饰符
一个类可以实现多个接口,非抽象类实现接口时必须实现接口中的全部方法
抽象类利于代码复用,接口利于代码维护