{[Java]}谁能讲解一下这段代码?

论坛 期权论坛 期权     
热心用户   2019-5-18 12:19   2642   4
  1. public interface RowHandler {
  2.     T handle(ResultSet rs);
  3. }
  4. //========================================================
  5. public class RecordQuery{
  6.     public  T query(RowHandler handler, ResultSet rs){
  7.         return handler.handle(rs);
  8.     }
  9. }
复制代码
返回值类型T旁边的是做什么的?
Rowhandler不是接口吗?那return handler.handle(rs)又是干嘛的?
求解

分享到 :
0 人收藏

4 个回复

倒序浏览
2#
zhihu用户  16级独孤 | 2019-5-18 12:19:06 发帖IP地址来自
你好。
1、Rowhandler是接口 接口的作用就是抽象 所以在public T query(RowHandler handler, ResultSet rs)这行的时候要传递接口参数而不是具体类,这叫做面对抽象编程
2、return handler.handle(rs) 是调用接口的实现类的handle方法处理结果集
3#
zhihu用户  16级独孤 | 2019-5-18 12:19:07 发帖IP地址来自
范型,返回传入的接口实例方法执行结果
4#
zhihu用户  16级独孤 | 2019-5-18 12:19:08 发帖IP地址来自
T是泛型, 是泛型在方法上的语法,意思是该方法上的T是泛型,而不是一个对象。接口的方法是可以被调用的,调用的结果是实现该接口方法的普通类的方法。
5#
zhihu用户  16级独孤 | 2019-5-18 12:19:09 发帖IP地址来自
去看看什么是泛型吧。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:64547
帖子:12910
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP