hay un par de discusiones sobre SO sobre los métodos de establecimiento que devuelven "este" tipo. Y parece que Java 7 tenía la propuesta de métodos nulos para devolver esto. Pero esta propuesta no pudo llegar a las características de Java 7. No pude encontrar si esta propuesta se traslada a Java 8 o futuro o si se ha descartado por completo. ¿Lo es?
Enlace de referencia: /programming/31584/design-java-and-returning-self-reference-in-setter-methods
Respuestas:
Parece que no puedo encontrar ninguna fuente de eso, pero creo que esta característica se eliminó por completo. Hay muchas razones por las que puedo pensar:
rendimiento : cada
void
método ahora tiene un código de operación de retorno adicional y cada lugar donde se llama a este método necesita implícito apop
menos que realmente use el encadenamiento de métodosCompatibilidad con versiones anteriores : la compilación de esta característica hace que el código sea incompatible con versiones anteriores porque el contrato de cada
void
método ha cambiadoPor supuesto, esto también puede ser implementado por el compilador (¿ llamando al método
void
? Probablemente quisiste decirthis
, déjame agregar esto implícitamente ), no sé cuáles son las desventajas de este enfoque.fuente
No creo que esto se haya propuesto formalmente para la encarnación de 2009 del Proyecto COIN. Esta página pretende enumerar todas las propuestas, y no puedo ver una que corresponda.
Si no se propuso, no se habría considerado.
fuente