基于接口的匿名类定义......也许?

2024-05-04

我在书中看到了这个Java片段春天在行动,但我不熟悉语言结构。

new RowMapper() {
  public Object mapRow() throws SQLException, DataAccessException {
    Motorist motorist = new Motorist();
    motorist.setId(rs.getInt(1));
    motorist.setEmail(rs.getString(2));
    motorist.setPassword(rs.getString(3));
    motorist.setFirstName(rs.getString(4));
    motorist.setLastName(rs.getString(5));
    return motorist;
  }
}

根据Spring文档 http://static.springsource.org/spring/docs/1.2.x/api/org/springframework/jdbc/core/RowMapper.html,RowMapper是一个接口。在我看来,它就像一个基于 RowMapper 接口的匿名类定义。这new关键字有点令人困惑,让我想知道这是否也创建了匿名类的一个实例。我猜是的,因为如果类没有名称,你将如何创建一个实例after定义它的线?

谁能证实我的猜测:

  • 这是一个基于 RowMapper 接口的匿名类定义,并且
  • 它创建该类的单个实例?

这是一个基于RowMapper接口的匿名类定义

正是如此。

它创建该类的单个实例?

是的。这是正确的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

基于接口的匿名类定义......也许? 的相关文章

随机推荐