将来完成进行时在特定情境下会用到,例如:
当动作本身是一个持续的过程时,如:By the end of the month, he will have been living/working/studying here for ten years, 表示他将在月底达到十年的连续居住/工作/学习状态。
如果动作是经常性的,且强调的是时间的累积,用将来完成进行时,如:By the end of this month, he will have been training horses/climbing mountains for twenty years, 指的是他驯马或登山的累计时间。
然而,若要提及具体的成果或动作分割,需用将来完成时,如:By the end of the month, he will have trained 600 horses 或 climbed 50 mountains,强调数量的累计。
将来完成时主要用于表示在将来某一时间点之前已完成的动作或持续的状态。它常与"before + 将来时间"或"by + 将来时间"连用,也可以与"before"或"by the time"引导的现在时从句结合。例如:
They will have been married for 20 years by then, 表示到那时他们已经结婚20年。
You will have reached Shanghai by this time tomorrow, 指的是到明天这个时候,你将到达上海。
将来完成时的构成是 "shall/will + have + 过去分词",如:"Before long, he will have forgotten all about the matter", 表示不久后他将完全忘记这件事。
而像"He will not have remembered his old classmates"这样的句子,则表示他可能不会记得老同学,强调的是一个不确定的未来情况。
最后,询问将来完成时态的问题,如:"Will you have known Kevin for 10 years next month?" 是在询问到下个月你是否将认识凯文满10年。