Rica ederim. Have, present perfect tense ile kullanıldığında, geçmişte tamamlanmış veya sonuçları şu an görülen eylemleri anlatmak için kullanılır. Have been ise, geçmişte başlayıp hala devam eden veya şu anki durumu etkileyen eylemleri anlatmak için kullanılır.
Örneğin:
~I have finished my homework. Bu cümlede, ödev bitirme eylemi geçmişte tamamlanmış. Bu yüzden have finished şeklinde kullanılıyor.
~I have been studying for the exam. Bu cümlede, sınava çalışma eylemi geçmişte başlamış ve hala devam ediyor. Bu yüzden have been studying şeklinde kullanılıyor.
Have been yerine sadece have kullanmak doğru olmaz. Çünkü bu, eylemin sürekliliğini veya pasifliğini kaybettirir.
Örneğin:
~I have working in this Company for four years. Bu cümle yanlıştır. Çünkü working fiilinin -ing eki almış hâli, have ile kullanılamaz. Have ile kullanılabilmesi için üçüncü hâl (past participle) olması gerekir. Yani worked şeklinde olmalıdır.
~I have closed due to an accident. Bu cümle de yanlıştır. Çünkü closed fiilinin üçüncü hâli (past participle), have ile kullanıldığında aktif (active) anlam verir. Yani ben kapatıldım değil, ben kapattım demek olur. Pasif anlam vermek için have been + üçüncü hâl (past participle) şeklinde olması gerekir.