如题所述
"Have done" 和 "have been done" 是两种不同的完成时态结构,它们的区别和用法如下:
1. "Have done" 是现在完成时态的结构,用来表示过去某个时间点以来一直延续到现在的动作或状态。它强调操作者或主语自身的参与或完成。
例句:I have done my homework. (我已经完成了我的作业。)
这句话表示我已经完成了作业,强调动作由我自己完成,而且完成动作的时间点不明确,可能是刚刚完成,也可能是早些时候。
2. "Have been done" 是现在完成时态的被动语态结构,用来表示过去某个时间点以来一直延续到现在的动作或状态,并且强调动作的承受者或受影响的对象。
例句:The dishes have been done. (盘子已经洗好了。)
这句话表示盘子已经被洗干净了,强调动作是由其他人或动作的承受者完成的,而且状态一直持续到现在。
总结:
- "Have done" 是现在完成时态的一般结构,用以表示从过去某个时间点持续到现在的动作,强调操作者自身的参与或完成。
- "Have been done" 是现在完成时态的被动语态结构,用以表示从过去某个时间点持续到现在的动作,强调动作的承受者或受影响的对象。
温馨提示:答案为网友推荐,仅供参考
第1个回答 2023-09-09
have done 是主动语态,意思是已经做过了;have been done 是被动语态,意思是已经被做过了。例如:
主动语态 I have done my job.我已经干完活儿了。
被动语态 My job has been done.我的活儿已经干完了。
主动语态 I have done my job.我已经干完活儿了。
被动语态 My job has been done.我的活儿已经干完了。