have done和have been done 的区别

2025年03月24日 04:48
有5个网友回答
网友(1):

这两个结构都是现在完成时,have been done为被动语态,have done为主动语态。
现在完成时表示过去发生的动作或状态对现在的影响或产生的结果,跨在两个时间之上,一是过去,二是现在。
The train for Kaohsiung has already arrived.
前往高雄的火车已经到了。
I have just read through Tolstoy's War and Peace.
我刚看完托尔斯泰的《战争与和平》。
Have you found my digital camera yet? No, I haven’t found it yet.
你找到我的数码相机了吗?不,我还没找到。
现在完成时可以表示一个从过去某个时间开始,持续到现在,并可能延续下去的动作,常同表示包括现在时间在内的一段时间状语连用,如:
I have learned English for one score years.
我学英语学了二十年。
I have learned English since one score years ago.
我学英语学了二十年。
I haven’t seen you for a long time.
好久不见。
It has been a long time since I saw you last.
好久不见。
I have had a headache all day long.
我头痛了一整天。
How long has he played the piano? For two hours.
他弹钢琴弹多久了?两小时。
瞬间动词的现在完成时,不能同表示一段时间的状语连用,如:
His father has been dead for ten years.
他的父亲故世十年了。
His father died ten years ago.(不能说,His father has died for ten years.)
他的父亲十年前故世的。
Amy has bought the car already.
埃米已经买了车子了。
Amy has had the car for one year.
埃米车子已经买了一年了。
He has been in New England for three days.
他去新英格兰三天了。
He has gone to New England.
他已经去新英格兰了。
He changed his mind last Friday.
他上周五就改变了主意。
They have begun to study a new lesson since yesterday. (错误,应该是:They
have studied a new lesson since yesterday.)
从昨天开始他们就在学习新课文了。
He has gotten to like her since last month. (错误,应该是:He has liked her since last month.)
他从上周就喜欢上了她。
瞬间动词的否定结构可以用在现在完成时里,表示状态的持续。
Never has he touched beer for a whole week.
他整整一个星期没沾啤酒了。
I haven’t bought anything for a year.
我一年没买任何东西。

网友(2):

have

完成式的标志,have
后面谓语动词要用现在完成式
have
done
是主动形式的现在完成式.

I
have
finished
my
homework.我已经完成我的作业了.是
“我”
主动完成的.谓语动词finished
是现在完成式
be
done
是被动形式,而have
后面要用完成式,谓语动词
be
(就是be
动词)
的现在完成式
是been,所以才有have
been
done
如,The
classrooms
have
been
cleaned.教室被打扫干净了.be
cleaned
被打扫,现在完成式就是
have
been
cleaned

网友(3):

have
done是现在完成时的主动语态,表示从过去某个时间点一直持续到现在一直在做某一件事;
have
been
done
是现在完成时的被动语态,表示从过去某个时间点到现在一直被做某事。

网友(4):

第一个的主语肯定是物啊。第二个的have
been
doing表状态、和主被动无关。

网友(5):

前面那个主语是什么~?若不是人
则用have
been
done
后面那个是have
been
doing
是人主动的