Bien, continuemos.
Vamos a crear la clase con el método Main.
Nos vamos al package como siempre.
Derecho.
New yaba class.
Ejemplo sobrecarga.
Y con el Main?
Vamos a crear la instancia de Calculadora Cal Igual New Calculadora
y comenzamos, tenemos la instancia, vamos a sumar dos entero.
Entonces sumar enteros, como por ejemplo Call punto, sumar y acá tenemos la sobrecarga.
Se fijan varios métodos, mismo nombre, pero distintos tipos de argumento y cantidad independientes.
Uno retorna un entero, otros tipo float, flotantes o vinton se fijan independiente.
Lo importante son los argumentos.
Lo único que importa en este caso vamos a sumar entero.
Entonces se debería de invocar este método.
Esta sobrecarga.
Entonces, por ejemplo, 10 y 5.
Si se fijan automáticamente acá no indica cuál va a ser el método.
El que recibe el entero a y el entero de claro es justamente por el tipo de dato que estamos pasando.
Veamos un ejemplo con flotantes
sumar float 2 punto, un espacio sumar y acá vamos a colocar 10, por ejemplo coma cero para negar que
un decimal, pero tenga que indicar que el tipo flotante float con F puede ser F mayúscula minúscula
coma cinco F.
Acá se selecciona el float X y el float y esa sobrecarga se fijan de acuerdo al tipo dato de forma automática.
Incluso sobre el método sumar aparece el método que se va a invocar, que se va a llamar float, que
retorna float y recibe el float x y el float y.
A diferencia de este, como son dos entero acá va a invocar el entero a y dentro de esa sobrecarga.
Pero también podríamos tener combinaciones sumar por ejemplo float int 2 punto.
Bien, entonces comencemos.
Vamos a sumar un flotante 10 f coma y un entero 5.
Entonces sea invocar esta sobrecarga float i y entero.
J el segundo sería entero y el primero flotante.
Bien puede estar en minúscula o mayúscula.
Recuerden
sumar y al revés Integer y float
diez coma cinco cero.
Si se fijan como no puse f o float puse 5.0 por defecto el doble, entonces se va a seleccionar esta
sobrecarga de forma automática.
Va a convertir el entero 10 a un tipo double de que se puede convertir un tipo de menor tamaño que sería
un entero de 32 bits a un doble, que sería un número flotante de 64 bits.
Por lo tanto, se puede hacer, se puede convertir eso en caso de que no indique el float.
Pero si acá indico que es float, ya deja de ser double y selecciona este acá entero y por lo tanto
está perfecto, entero con entero y flotante con flotante, un float con flota acá.
Entonces aflojamos de esa forma.
Hay que tratar de ser lo más explícito posible.
Shout sumar double.
Ahora sé que si, por ejemplo 10 da lo mismo, puede ser de esta forma con la de o de mayúscula coma
cinco de picas son dos double.
Pero lo estoy indicando con la letra B.
Bueno, por defecto es 10 punto cero y acá 5.0, pero del tipo double o bien punto cero.
Y acá también.
Punto cero.
Por la literal.
Cuando hay un punto por defecto, el doble, entonces se va a llamar o se va a invocar este método.
Acá lo tenemos Tobón y recibe el doble A y el doble y los suma.
Sumar es trenca.
Bueno, un strength 10 y otro 5.
Llega tenemos, retorna uno entero, pero suma dos estric OIV.
Ese es el método que se va a llamar en la sobrecarga
sumar tres enteros.
Por ejemplo, 10, 5 y 3.
Bueno, éste se selecciona entero antro de entero, se está sobrecarga, así que está perfecto.
Ahora veamos la conversión automática de tipos cuando, por ejemplo, quiero sumar tipos de datos que
son de menor tamaño, pero que compatible con alguno de estos métodos que reciba parámetros de mayor
tamaño pero compatible.
Por ejemplo, si quiero sumar lonko, pero no tenemos el método implementado que suma zol lonko, por
ejemplo.
Pero bien, como no lo tenemos, va a buscar un método que coincida.
Es decir, que sume dos números compatibles de mayor tamaño y cuál va a seleccionar el más cercano.
Por ejemplo, el que suma flotantes float o doble, pero el más cercano es el flop.
Por lo tanto, va a invocar o va a llamar a este método al que suma los dos float x y diga.
Veamos
del tipo lonco.
10 L Koma 5 l tontón lonko se fijan busca y selecciona e float X y offroad y bueno, la aplicación se
debe a que el LOC es de 64 bits que para almacenar enteros grandes, pero sin embargo el float es de
menor tamaño de 32 bits, pero puede almacenar número mucho mayores, ya que maneja el formato o la
notación científica se guardan con el exponente.
Entonces un long se puede almacenar dentro de un float sin ningún problema.
Es compatible.
Entonces por eso selecciona ese método con los flotantes.
Ahora, si no tuviéramos este método implementado, seleccionaría el doble que de hecho permite guardar
mucha más capacidad porque de 64 bits y además soporta la notación científica con el exponente.
Es decir, podríamos guardar en el double número muchísimo más grande que el máximo que soporta el lonko.
Entonces también sería compatible.
De hecho, lo pudiéramos probar.
Veamos qué pasa si comentamos este acá el float x y float y lo voy a comentar.
No es necesario que lo hagan, pero solamente para que lo veamos.
Lo comentamos.
Perfecto.
Veamos cual se invoca.
El doble A y B se fijan.
Y qué pasa con este también?
Sumar doble A y golpe.
Justamente porque el float es de menor tamaño de 32 bits.
Entonces va a buscar algún tipo compatible que sea mayor y que se pueda almacenar y vuelve a contar
el que suma los DOPO.
Llega también como el log de menor tamaño.
Encuentra el compatible el doble.
El método sobrecargado con los dos.
Doblón este acá.
Bien, voy a volver.
Lo dejé como estaba.
Entonces sabemos si queremos sumar lonko va a seleccionar la sobrecarga con los float.
Es todo acá.
A menos que implemente uno paralelo, por ejemplo, tampoco es necesario que lo hagan.
Lo voy a hacer acá.
Voy a colocar lonko.
Deja también.
Bien, se colocó entero.
No sé, yo podría haber perdido información porque estoy sumando dos números long, que mucho mayor
que un entero.
Entonces, por supuesto, se sumó dos log tengo que retornar un tipo compatible, lonko.
Jassi Y ahora este long be embocar esta nueva sobrecarga que recibe los dos lonko se fijen.
Pero la idea de ver la conversión automática.
Entonces te quitas.
Y los loc@ se van a sumar con la sobrecarga de lo flotante o de los dobl.
Bien, veamos otro ejemplo.
Sumar enteros, pero con una diferencia.
Punto sum sumar.
Qué pasa si colocamos, por ejemplo, ya diez coma un char el arroba?
Se fijan, funciona bien, no marca ningún error.
Y por qué?
Recuerden que un carácter también tiene su representación decimal en número en la tabla y único.
Por ejemplo, el arroba.
Si nos vamos a la página de Wikipedia lista de caracteres y único bueno en inglés list of y único caracteres
más abajo.
Por acá tengo que buscar el arroba.
Acá tenemos el ejemplo.
Acá está la година y corresponde al decimal 64.
Por lo tanto su representación en número es 7 y 4.
Y también podemos revisarlo en la página jónico Tapley puntocom.
Acá también está la година y acá dice decimal 64.
Se fijan por sobre.
Incluso hacemos un clic.
Y también lo muestra en el código HTML acá.
64.
Entonces al final va a sumar 10 más 64.
Y por supuesto, el método que se llama es el que suma 12 entero, ya que el carácter es un entero,
también una representación de un decimal.
Shout.
Float int.
Ahora desembocamos.
10 f coma arroba.
Cual sea invocar lo mismo.
Recuerden que este es un entero.
Por lo tanto se llamar al flog y integer int j de forma automática por la conversión iba a sumar 64
más diez coma cero o .0 float.
Ven y para probar voy a colocar un punto y quiero r. como por acá.
En la línea 6 y lo vamos a ejecutar paso a paso para que veamos qué método sobrecargado se está llamando
según los tiempos que estamos pasando.
Aunque igual lo vimos según lo que nos va indicando el IDE, pero la idea de que ejecutemos paso a paso,
entonces clic derecho de back.
Bien, entonces ejecutamos este over y acá la idea, en vez de colocar step over step into para ir al
detalle, se fijan.
Seleccionamos sumar acá con un clic.
Ahora, si amas B, se fijan entero a más entero.
Así que está perfecto.
Listo, volvemos.
Ejecutamos el siguiente.
Volvemos a ejecutar ahora un clic en Sumar.
Se va al float float.
Perfecto.
Continuamos.
Este tinto seleccionamos.
Y se va al float int.
Perfecto.
Ejecutamos con step into, siempre con este punto.
Sumar.
Ahora al revés, se va al entero i y el j flop.
Perfecto.
Step into nuevamente sumar se va el que suma dos dobles.
Este Pinto o este obert da lo mismo, nuevamente esté Pinto, esté Pinto y seleccionamos el que suma
Strength.
Se fijan acá.
Step over.
No quiero ir al detalle, solamente quiero pasar por encima perfecto y nos salimos el resultado de 15.
Perfecto.
Y de hecho, podríamos ir a consola, ir viendo el resultado de cada uno.
Bueno, todos a15.
Y continuamos este tinto.
Sumar.
Suma los tres enteros.
Y acá suma los dos, lonko.
Entonces vamos a ejecutar con Step Into, seleccionamos y se va able, que suma los dos float tipo auto
compatible, el más cercano.
Continuamos.
El siguiente, el que suma el 10 con el arroba, pone carretera година que corresponde al número 64,
así que el resultado debería ser setenta y cuatro.
Sumar.
Ahí sí y recibe dos entero.
Y el valor bueno.
Maffia 74.
Lo ejecutamos, se fijan 74.
Ahí está del último lo mismo, pero float.
Stepp Pinto Seleccionamos Sumar con un clic float y entero.
Ejecutamos y ejecutamos.
Acá sería un 74 punto, será porque flotante faltó dos puntos espacio y eso sería nada más.
Continuamos en la siguiente clase.