Métodos genéricos de Java:
No diré mucho sobre lo que significan los genéricos, y la definición de clases genéricas en Java también es relativamente simple, por ejemplo: prueba de clase pública <t> {}. Esto define una prueba de clase genérica. Al instanciar esta clase, debe especificar el tipo específico de T genérico, por ejemplo: Test <Sect> T = New Test <Sect> ();, indicando que el tipo de T genérico es objeto.
Pero los métodos genéricos en Java son más complicados.
Una clase genérica indica el tipo específico de un genérico al instancias de una clase; Un método genérico indica el tipo específico de un genérico al llamar a un método.
El formato de sintaxis para definir un método genérico es el siguiente:
El formato de sintaxis de llamar a un método genérico es el siguiente:
Para explicar, al definir un método genérico, debe agregar una <t> al valor de retorno para declarar que este es un método genérico, manteniendo una t genérica, y luego puede usar la T genérica como el valor de retorno del método.
La función de la clase <t> es indicar el tipo específico de un tipo genérico, y la variable C del tipo de clase <t> se puede usar para crear objetos de una clase genérica.
¿Por qué usar Variable C para crear un objeto? Dado que es un método genérico, significa que no sabemos cuál es el tipo específico o cuál es el método del constructor. Por lo tanto, no hay forma de nuevo un objeto, pero podemos usar el método NewInstance de la variable C para crear un objeto, es decir, usar reflexión para crear un objeto.
Los parámetros requeridos por un método genérico son de clase de tipo <t>, y el valor de retorno del método class.forname () también es clase <t>, por lo que class.forname () puede usarse como un parámetro. Entre ellos, ¿qué tipo es el parámetro en el método FORNAME () y qué tipo es la clase devuelta <T>? En este ejemplo, el método FORNAME () se pasa en la ruta completa de la clase de usuario, por lo que se devuelve el objeto de clase de tipo <User>. Por lo tanto, al llamar al método genérico, el tipo de variable C es la clase <serve>, por lo que la T genérica en el método genérico se indica como usuario, por lo que el tipo de obj variable es el usuario.
Por supuesto, los métodos genéricos no solo pueden tener una clase de parámetros <T>, sino que se pueden agregar otros parámetros según sea necesario.
¿Por qué usar métodos genéricos? Debido a que las clases genéricas deben indicar el tipo cuando se instancia, si desea cambiar un tipo, debe renovarlo, lo que puede no ser lo suficientemente flexible; mientras que los métodos genéricos pueden indicar el tipo cuando se llama, que es más flexible.
Gracias por leer, espero que pueda ayudarte. ¡Gracias por su apoyo para este sitio!