
这句话确实存在问题。所谓“完成时”,即perfect tense/aspect,在中文中应当翻译为“完整时”。这个时态强调的是行为从过去的某一时刻开始,直到说话时为止。如果使用延续性动词搭配具体的时点,语义会变得混乱。然而,并非所有perfect tense句型都需要时间状语,当不需要强调时间段时,可以省略。例如,表达“状态性”动词时,如I've been a student for a long time,强调的是整个时间段内一直保持的状态,而无需具体时间点。
对于“延续性”动词,如I have lived in Beijing for ten years,强调的是这段时间内的状态,同样不必强调具体的时间点。而“瞬间性”动词,如I have arrived in Beijing,强调的是动作的完成,表示真正的“完成时”,且通常不需要时间状语。
如果需要强调时间段,可以使用since、for、from...till...等表达,如I've been living here since 2008,2008在此时点与since连用,形成了时间段的概念。
因此,“have had”表达的是一种状态,表示从过去某一时间到说话时为止的状态,通常不需要时间状语。若强调具体时间,则需使用had加过去时间,如had supper yesterday。
综上所述,perfect tense并非不能加时间状语,但具体使用取决于语境和动词的性质。正确使用时态,能够更准确地传达信息。