2010-01-11 22 views
0

刚读了Spring的数据访问,它有这样的事情:需要澄清,这是否被认为是内联类或回调或其他?

jdbcTemplate.query(someSql, 
        new Object[] { 1 }, 
        new RowMapper() { 

        public Object mapRow(ResultSet rs, int rowNum) ... 
         Blah blah = new Blah(); 
         blah.setId(rs.getInt(1)); 


        } 

我指的是公共对象mapRow一部分。

这是一个内联类,还是一个回调? (或别的东西)

回答

4

这是一个使用匿名内部类实现的回调/上调。 “内联课程”是一些组成的术语(它来自哪里?)。

应该出现在JDK7中的闭包的新版本应该使这种事情变得更加冗长。

该成语被称为Execute Around

2

这是一个基于RowMapper类/接口创建的匿名内部类的方法。

如果它被传递到某处并响应某种事件发生而被调用,它也可以被称为回调(在某些一般意义上的单词中)。

0

我相信这将被定义为传递给另一个对象的内联类。回调类需要一些函数,它传递给它的原始对象可以访问并且...回调。