设计模式中有很多地方用到了接口,敲机房的时候也用到了接口,接口到底是干什么的呢,为什么要使用接口?我们真的清楚吗?
今天开会,说到七层,提到接口,师父问了这样一个问题,为什么要用接口呢?我说接口是用来实现的,接口中没有具体的方法体,接口为了让D层实现,同时添加抽象工厂的时候也需要接口,但是到底什么是接口,接口有什么作用,是不懂的,回来查了查。
【什么是接口】
定义
接口是一种约束条件,是一种标准,是指定一组函数成员而不实现成员的引用类型,类和接口可以实现接口,通过接口可以实现多重继承(在C#中一个类只能继承一个父类,但是可以通过接口实现多个)。
注意
1、接口的成员不能有new、public、protected、internal、private等修饰符,因为接口中成员默认为public的,接口不能实例化,即不能用new操作;
2、接口声明不包括数据成员,只能包含方法、事件、属性和索引等;
3、接口一旦被实现,实现类必须实现接口中的所有成员,除非实现类本身是抽象类;
【接口的作用】
1、利于扩展,解耦合——在做机房的时候我们可以在B层和D层之间添加接口,从而减小B\D两层的耦合效果
2、实现统一管理——不同的程序员实现相同的方法,可能使用不同的语言,这是就可以使用接口,从而实现统一,当需要修改的时候也方便许多。
【接口实现VS子类继承VS抽象类】
接口:是类和接口的关系是用来实现的,一个类可以实现多个接口,但是当类实现了接口就必须完成接口中的所以方法;
类的继承:是类和类之间的关系,子类继承父类,子类中可以有多于父类的方法,一个类只能继承一个父类;
抽象类:同样是类和类的关系,抽象类用abstract修饰,另一个类需要重写抽象类中的方法。
接口的功能非常强大,现在我们可能还没有感受到,相信我们在今后的学习中会不断接触到接口,对接口的认识还不深,希望大家多多交流!