/ / java equivalente a C # ExpandoObject - java, c #

Java equivalente a C # ExpandoObject - java, c #

Ejemplo del código C #:

dynamic MyDynamic = new System.Dynamic.ExpandoObject();
MyDynamic.A = "A";
MyDynamic.B = "B";
MyDynamic.C = "C";
MyDynamic.Number = 12;
MyDynamic.MyMethod = new Func<int>(() =>
{
return 55;
});
Console.WriteLine(MyDynamic.MyMethod());

Java:?

¿Alguna idea de por qué Java no tiene soporte para este escenario?

Respuestas

2 para la respuesta № 1

Java es mucho más estricto en este caso. Entonces la respuesta corta es no, Java no tiene un Expando. La sintaxis simplemente no lo admite.

Sin embargo, hay un Expando en Groovy que es un lenguaje dinámico en la parte superior de Java.

Por cierto, si está utilizando Expando para las pruebas, hay muchas soluciones relacionadas con Mock: EasyMock, Mockito, JMock por nombrar algunos.

Espero que esto ayude