在面对接口编程中(未完)
1. 在java中的接口等同于C语言的方法的声明,并没有做出具体的实现
2. 提升了程序的扩展性。因为有一个接口,可以有很多个插口,具体的实现是根据插口的性质确定的(在程序中的方法,static修饰后的静态方法不讨论)
3. 可以在不改变上层代码的基础上,修改整个功能的实现(通过对底层的操作改变)
4. 利于开发的进行,对于接口的制定,可以并行的进行程序的开发
5. 对于抽象类和接口,抽象类(Abstract)更多的倾向于代码的复用,接口(Interface)更多的是实现多态(Polymorphism)
6. 实现了同一接口的类之间,可以进行比较(有点像不同类型的东西之间是不可以进行正常比较的,就像a和1之间不能比较数值的大小一样)
7. 接口是对从现实生活中抽象出来的类的规则进行定义,抽象类是对于事物的行为和属性的抽象,和实体类不一样,抽象类中可以只定义声明,可以不写实现,抽象类是事物之间共性的抽象
8. 抽象类可以实现接口,但接口却无法继承抽象类,以严格来说,接口是抽象类的上级
9. 在分布式的开发中,接口比抽象类更加的有优势,因为在面向服务的设计中,更多的关注是能干什么,所以使用接口就更加的接近面对对象的编程(抛弃具体的实现细节,更好的直接考虑最后的结果,并不是真正的结果,是一种直接能够在人类口语中体现的表现形式)
10. 接口不止可以提供上层的抽象调用,也可以实现本层的抽象调用,调用者可以是多个层次的体系,可以说是依赖注入的基础
11. 折射到软件设计中,就是先确定上层的需求,再设计下层的接口,以需求驱动实现,才能设计出是,而且刚刚是我想要的东西。
依赖倒置,体现客户才是上帝的意识,体现服务意识
12. OOP中是万事万物皆对象,Interface中是一类对象的行为是该做什么就做什么
以上只是个人意见,初学者,有写错的地方请说明一下,谢谢~