java - titledborder - ¿Qué es invocadodinámico y cómo lo uso?
titledborder java (2)
Sigo escuchando acerca de todas las nuevas características geniales que se están agregando a la JVM y una de esas características interesantes es invocadadinámica. Me gustaría saber de qué se trata y cómo hace que la programación reflexiva en Java sea más fácil o mejor.
Es una nueva instrucción JVM que permite a un compilador generar código que llama a métodos con una especificación más flexible de lo que era posible anteriormente. Si sabes qué es " tipado de pato ", invoqueynamic básicamente permite el tipado de pato. No hay mucho como un programador de Java puede hacer con él; sin embargo, si usted es un creador de herramientas, puede usarlo para crear lenguajes basados en JVM más flexibles y eficientes. Here hay una publicación de blog realmente dulce que brinda muchos detalles.
Hace algún tiempo, C # agregó una función genial, sintaxis dinámica dentro de C #
Object obj = ...; // no static type available
dynamic duck = obj;
duck.quack(); // or any method. no compiler checking.
Piénselo como azúcar sintaxis para las llamadas al método reflexivo. Puede tener aplicaciones muy interesantes. ver http://www.infoq.com/presentations/Statically-Dynamic-Typing-Neal-Gafter
Neal Gafter, responsable del tipo dinámico de C #, simplemente desertó de SUN a MS. Entonces no es irrazonable pensar que las mismas cosas se han discutido dentro de SUN.
Recuerdo que poco después, un tío de Java anunció algo similar
InvokeDynamic duck = obj;
duck.quack();
Desafortunadamente, la función no se encuentra en Java 7. Muy decepcionado. Para los programadores de Java, no tienen una manera fácil de aprovechar invokedynamic
en sus programas.