En Java, hay dos formas de llamar a un método de clase: para métodos estáticos, puede llamar directamente al nombre de clase y para métodos no estatales, debe usar la llamada de objeto de clase. El mecanismo de reflexión proporciona una forma de llamada relativamente alternativa, que puede especificar el método que se llamará según sea necesario sin tener que determinarse durante la programación. El método llamado no se limita al público, pero también puede ser privado. Escriba un programa que utilice el mecanismo de reflexión para llamar al método estático sin () y el método no estático es igual a () de la clase de matemáticas.
La idea es la siguiente: use math.class.getDeclaredmethod ("sin", doble.type); El tipo de parámetro de entrada es el doble.
El código es el siguiente:
La copia del código es la siguiente:
import java.lang.reflect.method;
clase pública Dongtai {
public static void main (string [] args) {
intentar {
System.out.println ("Llame al método estático sin () de la clase de matemáticas");
Método sin = math.class.getDeclaredMethod ("sin", double.type);
Doble sin1 = (doble) sin.inmoke (nulo, nuevo entero (1));
System.out.println ("El valor sinusoidal de 1 es:" + sin1);
System.out.println ("Llame al método no estático es igual a () de la clase de cadena");
El método es igual = string.class.getDeClaredMethod ("iguales", objeto.class);
Boolean mrsoft = (boolean) igual.invoke (nueva cadena ("tecnología mañana"), "tecnología mañana");
System.out.println ("es la tecnología String Tomorrow:" + MRSOFT);
} Catch (Exception e) {
E.PrintStackTrace ();
}
}
}
El efecto se muestra en la imagen: