经验多了,学习深入了就慢慢了解了
如果你的软件不考虑复用,可以说面向对象里面的多态没有什么用处
接口也没有什么用处
如果看了设计模式,发现里面到处充斥了接口的用处(C++中用抽象类模拟接口)
简单两个例子说明一下接口的用处
1。解除强耦合,增强复用性
假设你要开发一个控制系统,使用串口进行通讯,主要有两个操作,读和写
按照你说的方法那么在主程序中定义一个类
TConnection
里面定义两个方法
TConnection.Read;
TConnection.Write;
然后写实现的方法
在使用的时候就
TmpConn := TConnection.Create;
try
TmpConn.Write……
但是如果后来需要将这个通讯方法改成USB,或者并口,或者CAN总线,或者TCP/IP或者其他怎么办?
只能重写代码
而使用接口来实现就相对增强了复用
比如定义一个接口
IConnection
里面包含两个方法Read和Write
这样你的主程序只要使用接口就可以了,将实现接口的类的实现独立成一个DLL(驱动)
这样将来若要换其他的通讯方式,你只要更新这个DLL就可以了,主程序因为接口部分稳定所以不需要更改,这样就降低了重写主程序造成的风险