这里只简述两点:
[size=medium][color=red]1、现实中,接口有两个层面的概念[/color][/size]
开发中,我们经常说:“你写个接口”、“你给我个接口”,这里的接口是指java的method
编程过程中,我们往往需要引进中间层,这时候,我们对这个中间层往往做一定的封装,比如我们平时开发的service、dao等,这里的接口就是指java的interface
[size=medium][color=red]2、针对接口编程,而不是针对实现编程[/color][/size]
这句话怎么理解了?这句话不是说我们随便写个什么东西,都弄个interface出来。
他的本意是指:[u][color=red]声明变量(或者方法返回值时)时使用接口类来声明[/color][/u]。
比如,我们需要一个List,假如我们这样声明一个方法: ArrayList getAll(),当你这个方法被很多地方调用,而恰好你需要的List实现需要调整为LinkedList实现,你可能需要修改很多地方的代码!
正确声明方式是:List getAll(),这样程序的维护性和拓展性才更好
[size=medium][color=red]1、现实中,接口有两个层面的概念[/color][/size]
开发中,我们经常说:“你写个接口”、“你给我个接口”,这里的接口是指java的method
编程过程中,我们往往需要引进中间层,这时候,我们对这个中间层往往做一定的封装,比如我们平时开发的service、dao等,这里的接口就是指java的interface
[size=medium][color=red]2、针对接口编程,而不是针对实现编程[/color][/size]
这句话怎么理解了?这句话不是说我们随便写个什么东西,都弄个interface出来。
他的本意是指:[u][color=red]声明变量(或者方法返回值时)时使用接口类来声明[/color][/u]。
比如,我们需要一个List,假如我们这样声明一个方法: ArrayList getAll(),当你这个方法被很多地方调用,而恰好你需要的List实现需要调整为LinkedList实现,你可能需要修改很多地方的代码!
正确声明方式是:List getAll(),这样程序的维护性和拓展性才更好