has gone是现在完成时针对第三人称单数的,have是第一人称或复数的,比如he has done something他做了什么事,I have done something我做了什么事,they have done something他们做了什么事。
had gone是过去完成时,对过去已经做过的事描述。She had gone to Shanghai。她去了上海(用于叙述以前的事,比如写在日记里).have/has gone是现在完成时,She has gone to Shanghai,她去了上海(还没回来)。They/I have gone to Shanghai.他们/我去了上海。
had been是过去完成时,表示去过什么地方,也是对过去已经做过的事的描述。I had been there.我去过那里。have/has been 是现在完成时,前者用于第一人称或复数(I或they等),后者用于第三人称单数(she或he或someone 等),he has been there.他去过那里(不管有没有回来)。
下面是术语意义:
过去完成时 :
1) 概念:表示过去的过去
过去完成时:即过去的过去所发生的事情!
其构成是主语+had +过去分词。
那时以前 那时 现在
2) 用法
a. 在told, said, knew, heard, thought等动词后的宾语从句。
She said (that) she had never been to Paris.
现在完成时:
现在完成时的用法
主语+have(has)+过去分词(done)
(1.)定义:现在完成时用来表示现在之前已发生过或完成的动作或状态,但其结果却和现在有联系,也就是说,动作或状态发生在过去但它的影响现在还存在.
I have lost my wallet.(含义是:现在我没有钱花了.)
Jane has laid the table.(含义是:简已在吃饭.)
Michael has been ill.(含义是:现在仍然很虚弱)
He has returned from abroad. (含义是:现在已在此地)
(2.)定义2: 现在完成时可以用来表示发生在过去某一时刻的,持续到现在的情况,常与for,since连用.
Mary has been ill for three days.
I have lived here since 1998.
温馨提示:答案为网友推荐,仅供参考