Sobrecarga (método de selección de recarga):
Java permite que múltiples métodos en una clase tengan el mismo nombre, pero cuando los nombres son los mismos, se deben incluir diferentes parámetros. , Los errores de tiempo de compilación ocurrirán sin coincidir los parámetros o encontrar múltiples coincidencias posibles.
La sobrecarga incluye: sobrecarga de métodos ordinarios y sobrecarga de métodos de constructor
Método: es decir, una función (que llamamos colectivamente en el texto "método"), es un segmento de programa fijo o una subrutina, que puede realizar funciones de operación fijas. Además, también tiene una entrada y una salida. Llamada Exit significa la función.
En general, una clase puede tener múltiples métodos de sobrecarga, y se pueden diseñar diferentes métodos de sobrecarga en la clase de acuerdo con diferentes necesidades. Entre ellos, el número de parámetros, tipos e incluso el orden de diferentes tipos de parámetros son diferentes sobrecargas para el mismo método. Por ejemplo, como se muestra en la figura, la clase de cadena que a menudo vemos es un ejemplo típico.
PD: Este ejemplo también es corregir un error ridículo que cometí cuando compartí mi experiencia la última vez. Verifique el título nuevamente, significa que es correcto, es una sobrecarga y no se escribe como una reescritura.
Método/paso
Primero, escribamos un ejemplo completo. Este es el método más primitivo, como se muestra en la figura. Continuaremos aprendiendo cada paso en el futuro y recargamos este método capa por capa.
1. Al principio, discutamos si el modificador de acceso tiene un impacto en la discusión de hoy. Es decir, no son condiciones necesarias para constituir diferentes métodos. En términos de Layman, la diferencia en los métodos no tiene nada que ver con si el modificador de acceso es consistente. Como se muestra en la figura, si el modificador de acceso es inconsistente y los parámetros son los mismos (o ninguno de ellos tiene parámetros), Java es predeterminado como el mismo método, por lo que la compilación no se puede pasar y se informa un error.
2. Después de excluir los modificadores de acceso, discutamos si la diferencia en el valor de retorno puede ser otra forma de sobrecarga. Tipo.
3. La única diferencia siguiente son los parámetros. Practicemos de acuerdo con situaciones. El primero son los parámetros diferentes.
4. En el tercer paso, estamos hablando de diferentes parámetros. Como se muestra en la figura, los tipos de parámetros son los mismos, y ambos son tipos enteros, pero los nombres de los parámetros formales son diferentes, por lo que la compilación no se puede pasar.
5. Además, la sobrecarga causada por diferentes parámetros. Podemos escribir otro ejemplo, 1 método sin parámetros, 1 método de parámetro int y dos métodos de parámetro int, como se muestra en la figura:
6. En este momento, hemos llegado al enlace clave. ¿Hay algún otro tipo de sobrecargas diferentes? ¡alguno! Imagine que los parámetros son diferentes y los números son los mismos. ¡Sí! ¡Adivinado correctamente! ¡El pedido es diferente! En diferentes órdenes, todavía hay métodos diferentes, que también permiten la sobrecarga. Como se muestra en la imagen:
Aquí hay otro ejemplo simple
int sum (int m, int n) {return m +n;} int sum (int m, int n, int k) {return m +n +k;} doble suma (doble m, doble n) {return m + n;} doble suma (doble m, doble n, doble k) {return m+n+k;} La implementación principal es la suma del método sobrecargado, que tiene la siguiente semántica:
SUM (M, N): Encuentre la suma de enteros my n,
SUM (M, N, K): Encuentre la suma de enteros m, n y k,
SUM (M, N): Encuentre la suma de números reales my n,
Suma (M, N, K): Encuentre la suma de números reales M, N y K.
Finalmente, resumamos que la sobrecarga solo se preocupa por los parámetros.