have是已经完成,have been是被动,也是已经完成。比如:I have finished it.我已经完成了它。it have been finished by me.它已经被我完成了。
have和havebeen有什么区别
1、"have"一般表示一种行为或状况的存在。它可以用来表示目前完成时(present perfect tense),也可以表示过去完成时(past perfect tense)。例句:
I have eaten breakfast this morning.
我今天早上吃了早饭。
She had finished her homework before she went to bed.
她睡觉前已经完成了她的家庭作业。
2、"have been"则表示一种行为或状况已经持续了一段时间,并且可能仍在进行中。它一般用来表示目前完成进行时(present perfect continuous tense),也可以表示过去完成进行时(past perfect continuous tense)。例句:
I have been studying English for two years.
我已经学英语两年了。
They had been working on the project for three months when it was canceled.
当项目被取消时,他们已经工作了三个月了。
总之,"have"强调行为或状况的完成,而"have been"强调持续的时间。
have been的使用方法解说
have been共有六种使用方法,如下:
1、have been 与表示职业的名词连用,用来询问或说明某人所从事的职业。与 how long, for 或 since 等短语连用后,则表示此种状况的持续时间。例句:
Have you ever been a worker?
你过去当过工人吗?
Ive been a teacher before.
以前我过去是一位老师。
How long have you been a dirver?
你当司机有多长时间了?
2、也用来表示天气。例句:
It has been cold since last yesterday.
自从昨天以来,天气一直非常冷。
The train has been gone .
火车开走了(半小时了)
3、可和表示地址的介词连用,表示等于汉语中的“去过”、“来”、“到”等不同动词的意思。例句:
How long have you been at the school?
你在/到/来这所学校多长时间了?
They have been in beijing for more than two years.
他们来北京两年多了。
4、have been 可以与 away, back, in, on, out, over 等小品词连用。等于一个 表示动作动词的目前完成时的使用方法, 表示某种状况。例句:
The film has been on .
电影开演(半小时)了。
The film has begun .
电影开演(半小时)了。
5、have been后接动词的目前分词,为目前完成进行时,强调从过去某一时间到目前为止的一段时间内一直进行或反复多次发生的动作。这个动作到说话时是不是停止, 视上下文或当时语言环境而定。例句:
He has been working in that school for five years.
他在这学校工作五年了。(目前是不是仍在该学校工作,视上下文而定。 )
6、have been +及物动词的过去分词。为目前完成时被动语态的形式,表示一个已完 成的被动动作。例句:
The moon has been visited by human being already.
月亮已经让人类访问过了。