¿Por qué los genéricos a menudo usan T?

¿Hay alguna razón para el uso de 'T' en genéricos? ¿Es algún tipo de abreviatura? Que yo sepa, todo funciona. Por ejemplo

public G Say<G>(){ ... }

o incluso

public Hello Say<Hello>(){ ... }

Respuestas a la pregunta(6)

Su respuesta a la pregunta