首页新闻找找看学习计划

DAO设计模式

0
悬赏园豆:20 [已解决问题] 解决于 2018-07-16 15:48

下面代码中IEmpService是一个接口类,EmpServiceImpl是一个接口实现类,请问一下getIEmpServiceInstance这个方法的返回值为什么是IEmpService呢,直接返回EmpServiceImpl类中的方法不行吗?

public class ServiceFactory {
public static IEmpService getIEmpServiceInstance()
{
return new EmpServiceImpl();
}
}

烧鸭的主页 烧鸭 | 初学一级 | 园豆:101
提问于:2018-07-13 18:18
< >
分享
最佳答案
0

当然可以,没什么不可以,
不过假如你这个方法要扩展的话,有可能new 一个别的实现类, 那你是不是就得重写一个接口了

收获园豆:20
、熙和 | 小虾三级 |园豆:1486 | 2018-07-14 10:40

那getIEmpServiceInastance()方法前面的返回值不能自己定义一个吗?我是不太明白getIEmpServiceInastance()这个方法的前面为什么要加上IEmpService这个类,有什么作用?

烧鸭 | 园豆:101 (初学一级) | 2018-07-14 10:45

@烧鸭: 面向接口编程,自己体会,凡事有利弊,返回值是接口还是实现类都有自己的好处,

、熙和 | 园豆:1486 (小虾三级) | 2018-07-14 11:39

@、熙和:谢谢

烧鸭 | 园豆:101 (初学一级) | 2018-07-16 15:48
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册