现在完成时(have done)
用法:
A)表示动作到现在为止已经完成或刚刚完成。
B)表示从过去某时刻开始,持续到现在的动作或情况,并且有可能会继续延续下去。此时经常用延续性动词。时间状语常用since加一个过去的时间点,或for 加一段时间,或by加一个现在时间。
过去完成时(had done)
用法:表示在过去的某个时间或动作以前已经发生的动作或已经存在的状态。就是我们常说的:表示"过去的过去的动作或状态"。
将来完成时(will have done)
用法:表示从将来的某一时间开始、延续到另一个将来时间的动作或状态,或是发生在某个将来时间,但对其后的另一个将来时间有影响的动作或状态。就好象把现在完成时平移到时间轴的将来时时段一样。其用法从和过去及现在有关,变成了和将来及将来的将来有关。