# Conceptos de Java

La sobrecarga de métodos en Java con ejemplos:
La sobrecarga de metodo es una característica que permite que una clase tiene dos o más métodos que tienen mismo nombre, si sus listas de argumentos son diferentes.
Las listas de argumentos podrían diferir en:
1. Número de parámetros.
2. Los datos de parámetros.
3. Secuencia de tipo de datos de parámetros.
La sobrecarga de métodos también se conoce como polimorfismo estático.
Puntos a tener en cuenta:
1. El polimorfismo estático también se conoce como tiempo de compilación de unión o enlace anticipado.
2. unión estática ocurre en tiempo de compilación donde la unión de llamada a un método para su definición sucede en tiempo de compilación.
La sobrecarga de métodos ejemplos:
Ejemplo 1: Sobrecarga - distinto número de parámetros en la lista de argumentos
Cuando el nombre de los métodos son los mismos, pero el número de argumentos son diferentes.
Salida:
a
a 10
En el ejemplo anterior - disp método ha sido sobrecargado con base en el número de argumentos - Tenemos dos definición de disp método, uno con un argumento y otra con dos argumentos.
Ejemplo 2: Sobrecarga - Diferencia en el tipo de datos de los argumentos
En este ejemplo, disp método está sobrecargado con base en el tipo de datos de los argumentos
Salida:
a
5
- Al igual que el ejemplo 1, aquí también, tenemos dos definición de disp método, un argumento con carbón de leña y otro con el argumento int.
Ejemplo 3: Sobrecarga - Secuencia de tipo de datos de los argumentos
Aquí disp método está sobrecargado basándose en la secuencia de tipo de datos de los argumentos - Tanto los métodos tienen diferentes secuencias de tipo de datos en la lista de argumentos. Primer método es tener lista de argumentos como (char, int) y el segundo está teniendo (int, char). Puesto que la secuencia es diferente, el método puede ser sobrecargado sin ningún problema.
Salida:
I’m the first definition of method disp
I’m the second definition of method disp
Conceptos:
Método: Un método es una subrutina cuyo código es definido en una clase y puede pertenecer tanto a una clase, como es el caso de los métodos de clase o estáticos, como a un objeto, como es el caso de los métodos de instancia.
Argumento: Los argumentos son los valores actuales asignados a los parámetros variables cuando el subrutina es llamada.
Parámetros: Un parámetro es una propiedad intrínseca de un procedimiento.
Polimorfismo: El polimorfismo se refiere a la propiedad por la que es posible enviar mensajes sintácticamente iguales a objetos de tipos distintos.
Método primordial en Java con el ejemplo
La declaración de un método en la subclase que ya está presente en la clase de padres que se conoce como método primordial.
Ejemplo:
Uno de los ejemplo más simple - Aquí la clase Boy se extiende de la clase human. Tanto las clases tienen un vacío como el método eat. La clase Boy está dando su propia aplicación para el método de eat o en otras palabras, se está anulando el método eat.
Salida:
Boy is eating
Ventaja primordial del método
La principal ventaja primordial del método es que la clase puede dar su propia aplicación específica a un método heredado sin siquiera modificar la clase padre (clase base).
El reemplazo de métodos de envío método dinámico
La expedición del método dinámico es una técnica que nos permite asignar la referencia de clase base a un objeto de clase hijo.
Salida:
disp method of Child class
abc method of parent class
En el ejemplo anterior, el objeto obj fue capaz de llamar a la disp (método de alteración temporal) y ABC (método no sustituida del clase base). Sin embargo, si se intenta llamar al método XYZ (que ha sido declarada recientemente en la clase de prueba) [obj.xyz] entonces se daría error de compilación con el siguiente mensaje:
Excepción en el hilo java.lang.Error "main": compilación sin resolver problema: El método XYZ está definido para el tipo ABC.
1. lista de argumentos: La lista de argumentos del método primordial debe ser la misma que la del método de la clase padre. Los tipos de datos de los argumentos y su secuencia deben mantenerse, ya que es en el método de primer orden.
2. Modificador de acceso: El modificador de acceso del método de alteración temporal (método de la subclase) no puede ser más restrictivo que el método reemplazado de la clase padre.
Por ejemplo, Esto no está permitido como método disp clase hija es más restrictivo (protegida) de la clase base (público).
Salida:
Excepción en el hilo java.lang.Error "principal": compilación sin resolver problema: No se puede reducir la visibilidad del método heredado de una clase base.
Sin embargo, este escenario es perfectamente válido como pública es menos restrictiva que protegida.
Salida:
Child class method
1. métodos privados, estáticas y finales no se pueden sustituir, ya que son locales a la clase.
2. el reemplazo de métodos (método de la clase hija) puede lanzar excepciones sin control, independientemente de si el método reemplazado (método de la clase padre) lanza cualquier excepción o no.
3. La unión de métodos sustituidos suceda en tiempo de ejecución que se conoce como enlace dinámico.
4. Si una clase está extendiendo una clase abstracta o implementar una interfaz, entonces tiene que reemplazar todos los métodos abstractos menos que la clase en sí es una clase abstracta.
La palabra clave super en Anulación
súper palabra clave se utiliza para llamar a la clase principal método / constructor. super.methodname llama al método especificado de clase base, mientras que super llama al constructor de la clase base. Vamos a ver el uso de súper en orden.
Salida:
Class ABC: mymethod
Class Test: mymethod