一小段关于接口的代码,求大神看一眼

it_hqk 2016-02-06 12:00:31

BaseDao.java
public interface BaseDao<T> {}

BaseDaoImpl.java
public abstract class BaseDaoImpl<T> implements BaseDao<T> {}

UserService.java
public interface UserService extends BaseDao<User>{}

UserServiceImpl.java
public class UserServiceImpl extends BaseDaoImpl<User> implements UserService {} //User就不粘出来了



我想问下,为什么UserService这个接口为什么还要继承一下BaseDao接口,不继承也没有什么影响呀?
这样的代码风格是从老师和视频讲解老师那里看到的,不懂为什么要这样。
...全文
433 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
fondOfJava 2016-02-22
  • 打赏
  • 举报
回复
继承,就是为了用到BaseDao里面的方法而已。应该用组合。
搬运工木木 2016-02-20
  • 打赏
  • 举报
回复
我感觉不用继承,都不是同一层的东西,干嘛用继承,一般都是用组合的方式,耦合性更小。我印象中像ssh中,service层用的到dao都是通过属性注入进去的,而不是继承的。不知道你看的是哪本书。
yangzhi_java 2016-02-20
  • 打赏
  • 举报
回复
引用 1 楼 u012927342 的回复:
userservice是服务层的,basedao是持久层的,你这个是接口,要连接服务层和持久层当然得继承,你不继承要处理的数据哪来?纯属个人理解,仅供参考。
你这回复完全不负责任啊!!!
花木兰1闪21A 2016-02-19
  • 打赏
  • 举报
回复
不需要继承,关联就行了
永哥威武 2016-02-19
  • 打赏
  • 举报
回复
引用 4 楼 u014482758 的回复:
从服务处和持久层的角度,感觉在接口这里是没有必要继承的,因为只有在服务层的实现类具体去实现时才回去调用持久层,我的理解是这样。
既然是教程,那么肯定还是在强调抽象类与接口之前的基础定义吧,首先从结构上来讲接如楼上所讲。
悲催的孩 2016-02-18
  • 打赏
  • 举报
回复
从服务处和持久层的角度,感觉在接口这里是没有必要继承的,因为只有在服务层的实现类具体去实现时才回去调用持久层,我的理解是这样。
it_hqk 2016-02-08
  • 打赏
  • 举报
回复
it_hqk 2016-02-07
  • 打赏
  • 举报
回复
求大神看一眼呗
meihaofij 2016-02-06
  • 打赏
  • 举报
回复
userservice是服务层的,basedao是持久层的,你这个是接口,要连接服务层和持久层当然得继承,你不继承要处理的数据哪来?纯属个人理解,仅供参考。

62,616

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧