现在完成时用法归纳如下:
1.若最近已结束的动作,与现在有紧密联系,且动作时间不明确,可用现在完成时
She has had lunch. 她吃了午饭。(最近吃的)
He has read the book. 他读了那本书。(最近读的)
They have arrived. 他们已经到了。(最近到的)
I have seen the movie. 我看了这部电影。(最近看的)
I have finished my homework. 我完成了作业。(最近做完)
Have you seen Tom? 你见到汤姆了吗?(最近是否见到)
She has read the book just now. (×)
She read the book just now. (√)
解析:由于句中动作时间明确,带有表示过去的时间状语just now,所以要用一般过去时,不能用现在完成时。
2.表示的最近的已结束的动作通常与现在有紧密联系,见以下例子陈述的场景:
Kate has broken her legs. 凯特摔断了腿。(她现在可能还因为这事走不了路)
The car has broken down. 车坏了。(现在可能想用都用不了了)
The movie hasn’t started. 电影还没开始。(现在可能都在等电影开始呢)
I have bought a watch. 我买了一个手表。(可能手表要派上用场了)
She has seen the movie. 她已经看过这部电影了。(所以她现在可能不想看了)
I have washed my car. 我洗车了。(所以它现在看起来很干净)
对比过去时:
Kate broke her legs.凯特摔断了腿。(现在很有可能已经好了,对现在没影响)
She saw the movie. 她看过这部电影。(仅陈述她看过这部电影而已,与现在没什么联系)
I washed my car. 我洗车了。(仅陈述洗过车,与现在无联系)
因此:
过去时,仅是陈述过去发生的事,与现在无紧密联系。
现在完成时,通常是陈述最近发生的事,与现在进行的事有紧密联系
现在完成时用法归纳的内容较多,需要多加理解。
3.若动作发生于较久之前,但仍与现在有紧密联系,也用现在完成时
She has seen tigers in that forest. 她看到那森林里有老虎。(可能现在还有)
Ann has written many novels. 安妮写了很多小说。(可能安妮还活着,还继续写小说)暂不整理进去
4.若过去的动作持续到现在还未结束,或到现在才结束,用现在完成时
She has lived here for two months. 她住在这里两个月了。(现在还住在这里)
We have been friends for ten years. 我们做朋友有十年了。(现在还是朋友)
He has smoked since he worked here. 自从他在这里工作,他就吸烟。(现在还吸烟)
I haven’t seen you for ten years. 我有十年没见你了。(但是现在见到了)
The room hasn’t been cleaned for a week, but we are cleaning it now. 这房间有一星期没打扫了,但是我们现在要打扫。
对比过去时:
She has worn glasses for five years. 她戴眼镜有五年了。(现在还戴眼镜)
She wore glasses for five years. 她戴眼镜戴了五年了。(现在没戴了)
We have lived here for ten years. 我们住在这里有十年了。(现在还住在这里)
We lived here for ten year. 我们在这里住了十年。(现在不住在这里)
用现在完成时表示最近已完成的动作,可用短暂性动词;但若用现在完成时态表示动作持续到现在,则不能用短暂性动词,尤其不能与表示时间段的for短语或since短语等连用,可灵活转换表达方式:
She has died for five years. (×)
She has been dead for five years. (√)(说明状态则可与时间段连用)
注:
常见的延续性动词举例:be, know, work, study, sleep, learn, speak, talk, wait, play, wear等
常见的非短暂性动词举例:come, go, arrive, see, hear, leave, begin, start, buy, die, join, borrow
以上就是现在完成时用法归纳,希望对你有所帮助。