have been和have done有何区别?还有have gone

问题描述:

have been和have done有何区别?
还有have gone

一个是现在完成时,一个是完成时,
现在完成时着眼于现在,强调过去发生的某动作对现在造成的影响和结果,或是由过去持续到现在的动作。

have+动词的过去分词 构成过去完成时这种时态
been是be的过去分词,done是do的过去分词
举个例子:
there is a tree.---there have been a tree.
he did his work.---he have done his work.

have been是去过
have done是做过
都是现在完成时

have been后加形容词,副词或动词的现在进行时,表示已经处于某种状态,或从过去某个时间点开始到现在一直在做某事.
have done表示已经完成的动作,后面可加副词进行修饰,它只能表示一个已经完成的动作,而不能表示一直延续的动作。

have been可以直代很多意思,主要还是指示"已经去过,或者到"一般比较熟悉的用法就是"I have been China for three months"
have done表已经做完了,是完成时,就是在你说话的时候,这件事已经做完了,比如说"I have done my homework"
have gone,也是完成时,表示已经走了"Your mother has gone befroe you arrived home"