Hola, recordemos que hasta ahora hemos revisado los conceptos de clase, atributo, asociación, método de instrucción, objeto y método constructor, en esta ocasión revisaremos un concepto de llamado de métodos. El llamado en método no es más que la forma de utilizarlo, recordemos que en sesiones pasadas revisamos como se definía un método, sin embargo, no hemos dicho como lo podemos utilizar. Para utilizarlo existen dos formas, la primera, es hacerlo dentro de la misma clase donde se ha definido, esto nos permitirá reutilizar el comportamiento y los cálculos que hemos construido dentro de los métodos. Pensemos por ejemplo en las pizzas y supongamos que queremos calcular la ganancia total. Para esto, primero debemos calcular la ganancia unitaria, podríamos optar por construir un método. Calcular la ganancia total dentro del cual primero calculamos una resta que corresponde a la ganancia unitaria o en vez de calcular esta resta podríamos buscar una forma de aprovechar el método que ya nos da la ganancia unitaria. La segunda forma de utilizar un método es hacerlo desde otra clase, esto permitirá que un objeto pueda acceder al comportamiento de otro o a los cálculos que ha hecho otro. Pensemos por ejemplo en el cocinero y supongamos que este quiere saber cuántas unidades ha producido de pizza, para esto debe saber cuántas unidades ha producido de cada una de las pizzas que él sabe preparar, esto quiere decir que debe consultar a cada una de las pizzas que él sabe preparar el valor del atributo, cantidad o unidades producidas, esto lo podemos hacer a través de los métodos. Trabajemos un poco más en el llamado de métodos desde la misma clase, para esto recordemos nuestras pizzas y veamos los miembros que hemos definido dentro de esta, por una parte, tenemos los atributos, como el costo de producción o el precio de venta el cual es privado y tenemos los métodos como el método de dar ganancia unitaria el cual es público, dado que los queremos utilizar dentro de la misma clase podemos acceder a ellos sin ningún problema. Ya sabemos que si queremos acceder a los atributos simplemente debemos escribir su nombre, ahora bien, si queremos acceder, llamar o utilizar los métodos dentro de la clase pizza dentro de ella misma simplemente debemos poner el nombre del método y ya que es un método debemos incluir los paréntesis dentro de los cuales pondremos los parámetros que requiera el método. Veamos un ejemplo en código. Para eso traigamos la declaración de nuestra clase Pizza la cual tenía tres atributos, el costo de producción, la cantidad producida, el precio de venta y el método que calculaba la ganancia unitaria, ahora construyamos el método que calcula la ganancia total. Para esto, con lo que sabemos hacer hasta el momento, podríamos crear una variable donde guardamos la resta en el precio de venta y el costo de producción y posiblemente la multiplicaríamos por la cantidad producida. Sin embargo, si nos fijamos cuidadosamente el cálculo de la variable resta corresponde a las operaciones que sabe hacer el método de dar ganancia unitaria, entonces, en vez de calcular la resta nuevamente simplemente podríamos llamar al método de dar ganancia unitaria, recordemos que para llamar un método de la misma clase simplemente escribimos su nombre y sus parámetros. Trabajemos ahora sobre el llamado de métodos de otra clase, para esto recordemos a nuestro cocinero el cual quiere conocer cuántas unidades de pizza ha producido y para esto debe saber cuántas unidades ha producido de cada una de las pizzas que él sabe preparar, recordemos que nuestro cocinero tiene dos pizzas, la pizza uno, la pizza dos y de alguna forma debe poder acceder a la información que esta almacenada dentro de ellas. Para esto usaremos el operador punto. El operador punto en llama nos permite acceder a los miembros públicos de una clase. ¿Cómo haremos esto? Para esto definiremos primero el objeto al cual queremos hacerle el llamado al método posiblemente utilizaremos el operador punto y a continuación pondremos el nombre del miembro al cual queremos acceder, en nuestro caso el nombre del método al cual queremos acceder. Veámoslo en un ejemplo. Recordemos que tenemos a nuestro cocinero y él tiene el objeto de la clase Pizza, en este caso llamado pizza uno y la pizza tiene los miembros que son los atributos que hemos definido como privados y los métodos que hemos definido como públicos, dado que los atributos son privados solo pueden ser accedidos desde la clase pizza, entonces estos los descartaremos por este momento. Ahora, dado que los métodos son públicos ellos pueden ser accedidos desde la clase cocinero o desde el objeto de la clase cocinero utilizando el operador punto. Veamos un ejemplo. Supongamos que queremos utilizar el método de dar ganancia unitaria, para esto entonces iniciaremos poniendo el nombre del objeto, en este caso pizza uno. A continuación pondremos el operador punto y finalmente podremos el nombre del miembro al cual queremos acceder o al cual queremos llamar o el cual queremos utilizar, en este caso el método de dar ganancia unitaria. Supongamos ahora que queremos utilizar o llamar al método de dar ganancia total, nuevamente ponemos el nombre del objeto, en este caso pizza uno, el operador punto y a continuación el nombre del método que en este caso es dar ganancia total. Supongamos que ahora queremos utilizar alguno de los métodos de la clase pizza dos, simplemente basta con poner el nombre del objeto, en este caso pizza dos, el operador punto y el nombre del miembro al cual queremos acceder, en este caso el método de dar ganancia unitaria. Veamos un ejemplo en código. Para esto, traigamos tanto la declaración de la clase Pizza como la declaración de la clase cocinero. La clase pizza hemos traído la declaración del atributo cantidad producida el cual es privado por lo tanto no puede ser accedido desde ninguna otra clase y la declaración del método dar cantidad producida, lo cual es público y puede ser accedido desde otras clases o de otros objetos de otras clases. Ahora, dentro de la clase cocinero definiremos el método dar unidades producidas el cual necesita sumar las unidades producidas de la pizza uno y de la pizza dos. Entonces, iniciaremos con la instrucción de retorno dado que queremos informar el valor que vamos a calcular, a continuación, ponemos el nombre del primer objeto al que le llamaremos el método de dar cantidad producida, en este caso, pizza uno. Ahora llamaremos al método, entonces utilizamos el operador punto seguido del nombre del método que queremos llamar, recordemos que el método debe incluir los parámetros que este requiere para hacer los cálculos que le hemos asignado y ahora repetiremos la misma operación con el objeto pizza dos para poder calcular el total de unidades producidas por este cocinero. Con esto hemos terminado el tema de llamado de métodos. En la próxima sesión revisaremos el tema de creación de objetos.