Выглядит опасно Интересно, что произойдет, если вы дадите другое определение класса во второй раз.

ел этот фрагмент 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;
  }
}

По словамВесенняя документацияRowMapper - это интерфейс. Для меня это выглядит как определение анонимного класса на основе интерфейса RowMapper.new ключевое слово немного сбивает с толку, заставляя меня задуматься, создает ли это также один экземпляр анонимного класса. Я бы предположил, да, потому что, если у класса нет имени, как вы будете когда-либо создавать экземплярпосле линия, которая определяет это?

Может ли кто-нибудь подтвердить мои предположения, что:

это анонимное определение класса, основанное на интерфейсе RowMapper, ион создает один экземпляр этого класса?

Ответы на вопрос(6)

Ваш ответ на вопрос