为了账号安全,请及时绑定邮箱和手机立即绑定

为什么要把DAO作为接口 再用impl类来实现?

在写EmployeeDAO和EmployeeService的时候为什么一定要用接口呢   不可以直接写实现类吗 或者这么做的好处是什么啊

正在回答

2 回答

哈哈 懂啦  用接口来分离调用类和他的具体实现    这样后期维护也方便  也可以算是低耦合吧

0 回复 有任何疑惑可以回复我~

这样做是为了后期的维护。当软件全部编好了,测试好了,然后给用户装好了,但是过一段时间,用户用着不爽,他又让做软件的人改变一些功能,这样软件开发人员只需要改实现类里面的代码,也就是只用改一个包下代码,不用这个包改一下,那个包里的代码还要改。因为项目大了,代码就是成万上亿行。用了接口的话,就起了这个作用,我举个生活中的例子:就好比你家突然停电了,经过你的一番检查,发现是一处电线断了,这时候你只需要把电线里面的铜丝或者铝丝接上,就好了,而不用把电线外面的绝缘皮剥了,然后再接铜丝或者铝丝。可能说的意思不太对,但是就是这个意思。

另外,不用接口的话,假如修改了dao中的代码,因为service引用了dao中的类,那么也要改变service里面的代码,改完之后要重新编译运行,当项目比较大的时候,编译和运行很浪费时间的,而且会产生一些意外(我听老师说的,我还没遇见过),本来只要编译dao中的代码,现在不光要编译dao中的代码,还要编译service。因为你不用接口,间接着action里的代码也要改,因为action中引用了service中的类,到最后,就变成了,牵一发而动全身。本来在各个层之间用了接口只需要改一处代码的,这下可好,全要改,再举个不太恰当的例子:好比,我摔了一跤,小腿摔断了,小腿断了,因为没用接口,间接着,大腿也断了,接着,屁股开花了,接着,上身也感染了。最后gg了。可能不太恰当,但是有助于你理解。

1 回复 有任何疑惑可以回复我~
#1

Boler_MGL 提问者

谢谢啦 在别的地方看到的也差不多都是这个意思 主要就是为了分离那两个类 以便后期维护
2016-09-26 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么要把DAO作为接口 再用impl类来实现?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信