我觉得,Record接口还应该包括一个collectIntoRecord(Record record)方法,这样每个Record的子类都会有相应的处理方法,而不是像楼主那样把这个方法放在RecordReader类中。
像上面那样设计,RecordReader类就比较简单了,直接调用对象的collectIntoRecord方法就可以了。