第1个回答 2023-11-13
have been和have been done是两个完全不同的东西,没有必要比较。
have been就是have done的一种,这里的done可以是很多词,而been就是其中一种,就像sth.可以表示很多非人的名词一样,have done是现在完成时的特征性用法,比如:I have been to Beijing before:我以前去过北京; 再比如:Lilly has gone to Beijing:丽丽已经去北京了。 这里的 been和gone就是have done的done,done用来表示动词的完成时,但是要注意,done自己也有含义,比如:I have already done my homework:我已经写完作业了,这里的done就是 do homework的do的完成时。
have been done其实也是have done的用法,但是,他是have done的被动语态,也就是 be done的现在完成时,现在完成时就是 have/has + 谓语的完成时,所以这里就成了have been done 也就是把be done的be变成完成时的been,比如: My homework has been finished/done already:我的作业已经被我写完了。
所以这个你就可以理解了have been只是一个普通的完成时,have been done是完成时的普遍“公式”