0% encontró este documento útil (0 votos)
61 vistas14 páginas

Metodos en Java

Metodos en java
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
61 vistas14 páginas

Metodos en Java

Metodos en java
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF o lee en línea desde Scribd
Está en la página 1/ 14
sara 17:10 ‘Métodos en Java con Ejemples | Java deste Cero Métodos en Java con Ejemplos Intermedio (https://javadesdecero.es/categoria/intermedio/) | Home (https://javadesdecero.es) JAVADESDE CERO Métodos en Java con Ejemplos Intermesio (hips:ljavadesdecero.esicategorialintermedio/) POO (hitps:/javadesdecero.esicategoria/poo!) 5 Comentarios (hltps:javadesdecero,esipoolmetodos-con-sjemplosiicomments) por Alex Walton ORACLE Oracle Autonomous zee Data Warehouse intel. (http ‘Aprende sobre los métodos en Java con ejemplos. Algunos lo laman funcién, pero método es la palabra correcta. igg3 Antes de que continues Necesitas leer sobre Clases CLASES EN JAVA (HTTPS://JAVADESDECERO.ES/PO0/QUE-ES-UNA-CLASE-EJEMPLOS/) Como se explicé, las variables y los métodos de instancia son constituyentes de las clases. Hasta ahora, la clase Vehiculo contiene datos, pero no métodos. Aunque las clases de solo datos son perfectamente validas, la mayoria de las clases tendran métodos. Tabla de Contenido 1, ZQué es un Método en Java? 2, .Cémo se escribe un método? 3, Ejemplos de Métodos 4, Entendiendo el funcionamiento del Método 5, Retomando de un Método 6. Devolviendo un valor 6.1. Uso de return en un método 7. Métodos con Pardmetros Politica de Privacidad & Cookies Iitps:tjavadesdecero.es/poo!metodos-comejemplos! ana sara 17:10 Métodos an Java con Ejamplos | Java desde Cero 1. {Qué es un Método en Java? Los métodos son subrutinas que manipulan los datos definidos por la clase y, en muchos casos, brindan acceso a esos datos. En la mayoria de los casos, otras partes de tu programa interactuardn con una clase a través de sus métodos. Un método contiene una o mas declaraciones. En un cédigo Java bien escrito, cada método realiza solo una tarea, Cada método tiene un nombre, y es este el que se usa para llamar al método. En general, puede dar el nombre que desee a un método cualquiera. Sin embargo, recuerde que main() esté reservado para el método que comienza ejecucién de su programa. Ademas, no use las palabras clave (https:ijavadesdecero.es/fundamentos/identificadores-y-palabras-reservadas/) de Java para nombres de métodos. 2. £Cdmo se escribe un método? Un método tendra paréntesis después de su nombre. Por ejemplo, si el nombre de un método es getval, se escribira getval() cuando su nombre se usa en una sentencia, Esta notacién lo ayudard a distinguir los nombres de las. variables de los nombres de los métodos. La forma general de un método se muestra a continuacién’ tipo-retorno nonbre(1ista parametros){ {Cuerpo del método + Aqui, tipo-retomo especifica el tipo de datos devueltos por el método. Puede ser cualquier tipo valido, incluidos los tipos de clase que cree. Si el método no devuelve un valor, su tipo de devolucién debe ser void + Elnombre del método se especifica por nombre. Puede ser cualquier identificador legal que no sea el que ya utiizan otros elementos dentro del alcance actual. + La lista de pardmetros es una secuencia de tipos ¢ identificadores separados por comas. Los parémetros son esencialmente variables que reciben el valor de los argumentos pasados al método cuando se llama. Si el método no tiene pardmetros, la lista de parémetros estard vacia. 3. Ejemplos de Métodos Agregar un método ala clase de Vehi ule ORACLE + intel f ( Necesitas bUsquedas mas rapidas ) Anteriormente: (https:/hwww.pixfuture.com/advertis id03482935214) Politica de Privacidad & Cookies hitps:lfavadesdecero.es/poo!metados-con-sjemplos! ane sara 17:10 Mélodos an Java con Ejamplos | Java desde Cero /* Un programa que usa 1a clase Vehiculo El archivo se lana DenoVehiculo. java ” class Vehiculo { int pasajeros; //numeros de pasajeros int capacidad; //capacidad del conbustible en galones int mpgs /Iconbustible consunido en millas por galon d //Esta clase declara un objeto de tipo Vehiculo class DenoVehiculo ¢ public static void main(string[] args) ( Vehiculo minivan = new Vehiculo(); int rangos //asignando valores a los campos de minivan minivan. pasajeros = 9; minivan. capacidad = 15; minivan.mpg = 205 J[Calcular el rango asumiendo un tanque Leno rango = minivan. capacidad * minivan.mpg; System.out.println("La Minivan puede llevar " + minivan.pasajeros +" pasajeros con un ran go de" + rango +" millas } y Como acabamos de explicar, los métodas de una clase suelen manipular y proporcionar acceso alos datos de la clase. Con esto en mente, recuerde que main() enlos ejemplos anteriores calculé el rango de un vehiculo al muttiplicar su tasa de consumo de combustible por su capacidad de combustible, Si bien es técnicamente correcto, esta no es la mejor manera de manejar este calculo. El célculo del alcance de un vehiculo es algo que se maneja mejor con la clase de vehiculo en si. El motivo de esta conclusién es facil de entender: el alcance de un vehiculo depende de la capacidad del tanque de combustible y la tasa de consumo de combustible, y ambas cantidades estan encapsuladas por el vehiculo. Al agregar un método al \Vehiculo que calcula el rango, esté mejorando su estructura orientada a objetos. Para agregar un método al Vehiculo, especifiquelo dentro de la declaracién del Vehiculo. Por ejemplo, la siguiente versién de Vehiculo contiene un método llamado rango() que muestra el rango o aleance del vehiculo. Polltica de Privacidad & Cookies hitps:lfavadesdecero.es/poo!metados-con-sjemplos! aita sara 17:10 Mélodos an Java con Ejamplos | Java desde Cero /1Ahadiendo rango a Vehiculo class Vehiculo { int pasajeros; //nimeros de pasajeros int capacidad; //capacidad del combustible en galones int mpgs /Iconbustible consumido en millas por galon /IMostrando el rango void rango (){ System.out.printin(“Con rango de “+ capacidad*npg) ; class MetodoAdicional { public static void main(stringl] args) { Vehicule minivan = new Vehiculo(); Vehiculo sportscar = new Vehiculo(); //dsigando valores @ los campos en minivan minivan. pasajeros=9; minivan. capacidad=15; minivan. mpg=20; /1Asigando valores @ los campos en minivan sportscar.pasajeros=10; sportscar. capacida sportscar.mpg=30; System.out.print("La Minivan puede llevar minivan. rango(); +ninivan.pasajeros +". "); system.out.print("El Sportscar puede llevar " +minivan.pasajeros +" sportscar.rango(); Este programa genera la siguiente salida: La Minivan puede llevar 9. Con rango de 300 E1 Sportscar puede Ilevar 9. Con rango de 75@ 4. Entendiendo el funcionamiento del Método ‘Veamos los elementos clave de este programa, comenzando con el método rango() : + La primera linea de rango() es void rango() { //Esta linea declara un método Ilamado rango que no tiene paranetros. //Su tipo de devolucién es void, osea nulo. //Por lo tanto, rango() no devuelve un valor al ser llamado. //la linea termina con 1a lave de apertura del cuerpo del método. Politica de Privacidad & Cookies hitps:lfavadesdecero.es/poo!metados-con-sjemplos! ane sara 17:10 Métodos an Java con Ejamplos | Java desde Cero + El cuerpo del rango() consiste Unicamente en esta linea: systen.out.printin("Con rango de "+ capacidad*npg) ; //Esta declaracién muestra el rango del vehiculo multiplicando la capacidad del combustible por mp e /fbado que cada objeto de tipo Vehiculo tiene su propia copia de capacidad y mpg, cuando se llama //a rango(), el célculo de rango utiliza las copias del objeto que realiza la llamada de esas vari ables. //€1 método rango() finaliza cuando se encuentra su llave de cierre. //Esto hace que el control del prograna se transfiera nuevanente a quién lo lama. + Accontinuacién, mira de cerca esta linea de cédigo desde adentro de main() minivan. rango(); Esta dectaracién invoca el método rango() en minivan, Es decir, lama a rango() relativo al objeto de minivan, Utilizando el nombre del objeto seguido del operador de punto, Cuando se llama a un método, el control del programa se transfiere al método, Cuando el método finaliza, el control se transfiere de vuelta a quién lo llama, y la ejecucién se reanuda con la linea de cédigo que sigue a la llamada En este caso, la llamada a minivan.rango() muestra el rango del vehicula definido por minivan. De manera similar, la llamada a sportscar.rango() muestra el rango del vehiculo definido por sportscar, Cada vez que rango() se invoca, muestra el rango para el objeto especificado, Hay algo muy importante para notar dentro del método rango(): las variables de instancia capacidad y mpg se refieren directamente, sin precederlas con un nombre de objeto o el operador de punto. Cuando un método usa una variable de instancia que esta definida por su clase, lo hace directamente, sin referencia explicita a un objeto y sin el uso del operador de punto. Esto es facil de entender silo piensas mejor. Un método siempre se invoca en relacién con algtin objeto de su clase. Una vez que se ha producido esta invocacién, se conoce el objeto. Por Io tanto, dentro de un método, no hay necesidad de especificar el objeto por ‘segunda vez. Esto significa que capacidad y mpg dentro de rango() se refieren implicitamente a las copias de esas variables encontradas en el objeto que invoca rango(). 5. Retornando de un Método En general, hay dos condiciones que hacen que un método retorne: + Primero, como lo muestra el método rango() en el ejemplo anterior, cuando se encuentra la llave de cierre del método. + El segundo es cuando se ejecuta una declaracién de retorno (return), Hay dos formas de devolucién: + Una cuando usa métodos con la palabra void (aquellos que no devuelven un valor) y otra para devolver valores. Veremos la primera forma y luego pasaremos a retornar valores. En un método void , se puede causar la terminacién inmediata de un método utlizando esta forma de devolucién: returns Cuando se ejecuta esta instruccién, el control del programa regresa a quién lo llama, omitiendo cualquier cédigo restante en el cuerpo del método, Por ejemplo, considere este método: Polltica de Privacidad & Cookies hitps:lfavadesdecero.es/poo!metados-con-sjemplos! site sara 17:10 Mélodos an Java con Ejamplos | Java desde Cero void miMetodo(){ ant 45 for (i=0; ice; i++){ if (i == 5) return; //Se detiene antes de llegar a 5 system.out.println(i); Aqui, el bucle for (hitps:/javadesdecero.es/basico/bucles-for-while-do-while-ejemplos/) solo se ejecutard de 0a 5, porque una vez que sea igual a 5, el método retornard (Ojo, no devuelve sino que finaliza)... Es permisible tener mittiples instrucciones retum en un método, especialmente cuando hay dos o mas rutas fuera de él. Por ejemplo: void miMetodo(){ us if (hecho) returns uw Af (error) return; “ y Aqui, el método retoma si esta hecho o si ocurre un error. Tenga cuidado, sin embargo, porque tener demasiados puntos de salida en un método puede desestructurar tu cédigo: asi que evita usarlos casualmente. Un método bien diseftado tiene puntos de salida bien definidos. Recuerde: un método void puede retomar (regresa a quién lo llama) de una de las dos maneras: cuando X alcanza su llave de cierre, 0 cuando se ejecuta una declaracién return. 6. Devolviendo un valor ‘Aunque los métodos con un tipo de retomo void no son raros, Ja mayoria de los métodos devolveran un valor. De hecho, la capacidad de devolver un valor es una de las caracteristicas més titles de un método. Los valores de retomo se utilizan para una variedad de propésitos en la programacién. En algunos casos, el valor de retorno contiene el resultado de algtin calcula. En otros casos, el valor de retorno puede simplemente indicar éxito 0 falla, Y en otros, puede contener un cédigo de estado. Cualquiera que sea el propésito, usar valores de retorno de método es una parte integral de la programacién de Java, Los métodos devuelven un valor a la rutina de llamada usando esta forma de devolucién: return valor; ‘Aqui, valor es el valor devuelto. Esta forma de devolucién se puede usar solo con métodos que tienen un tipo de devolucién no-void. Ademés, un método no-void debe devolver un valor utilizando esta forma de return. 6.1. Uso de return en un método Puede usar un valor de retomo para mejorar la implementacién de rango(), En lugar de mostrar el rango, un mejor ‘enfoque es hacer que rango() calcule el rango y devuelva este valor. Una de las ventajas de este enfoque es que puede usar el valor para otros céiculos, Politica de Privacidad & Cookies hitps:lfavadesdecero.es/poo!metados-con-sjemplos! arta sara 17:10 Métodos an Java con Ejamplos | Java desde Cero El siguiente ejemplo modifica rango() para devolver el rango en lugar de mostrarlo. /[Usando return class Vehiculo { int pasajeros; //numeros de pasajeros int capacidad; //capacidad del conbustible en galones int mpgs /Iconbustible consunido en millas por galon /[Retornando 0 devolviendo el rango int rango ({ return capacidad*npg; class RetornandoMetodo ( public static void main(steing[] args) ( Vehiculo minivan = new Vehiculo(); yen Vehiculo(); Vehiculo sportscar int rangol, rango2; //Asigando valores 2 los campos en minivan minivan. pasajeros=9; minivan. capacidad=15; sportscar. pasajero: sportscar. capacidad: sportscar.mpg=30; niendo los rangos pinivan.rango(); portscar.rango() 5 System.out.println(“La Minivan puede llevar " +minivan.pasajeros +". Con rango de: "“+rango us System.out.println(“El Sportscar puede Ilevar " +minivan.pasajeros +". Con rango de: "+ran 02); sportscar.rango(); y y Salida: La Minivan puede llevar 9. Con rango de: 300 E1 Sportscar puede llevar 9. Con rango de: 75@ En el programa, observe que cuando se llama a rango(), se coloca en el lado derecho de una instruccién de asignacién. A la izquierda hay una variable que recibir el valor devuelto por rango(). Por lo tanto, después de que rrangol = minivan.rango(); 88 ejecuta, el rango del objeto minivan se almacena en el rango!. Politica de Privacidad & Cookies hitps:lfavadesdecero.es/poo!metados-con-sjemplos! 78 sara 17:10 Métodos an Java con Ejamplos | Java desde Cero Observe que rango() ahora tiene un tipo de retomo int, Esto significa que devolverd un valor entero a quién lo llama, El tipo de devoluci6n de un método es importante porque el tipo de datos devueltos por un método debe ser compatible con el tipo de devolucién especificado por el método. ‘Aunque el programa anterior es correcto, no esta escrito de la manera mas eficiente posible. Especificamente, no hay necesidad de las variables rangot 0 rango2. Una llamada a rango() se puede usar en la instruccién printin() directamente, como se muestra aqui System.out.printIn("La Minivan puede llevar * +minivan.pasajeros 00095 + Con rango de: "+ minivan.rang 7. Métodos con Parametros Es posible pasar uno 0 mas valores a un método cuando se llama al método, Recuerde que un valor pasado a un método se llama argumento. Dentro del método, la variable que recibe el argumento se llama parémetro, Los pardmetros se declaran dentro de los paréntesis que siguen al nombre del método. La sintaxis de declaracién de pardmetro es la misma que la utllizada para las variables. Un parémetro esté dentro del alcance de su método, y aparte de su tarea especial de recibir un argumento, actiia como cualquier otra variable local, ‘Aqui hay un ejemplo simple del uso de parametros. Dentro de la clase ComprobarNumero, el método esPar() devuelve true si el valor que se pasa es par. Devuelve false de lo contrario. Por lo tanto, esPar() tiene un tipo de retorno booleano. //0n ejenplo sienple del uso de pardnetros class ComprobarNunero { //Retorna true si x es par boolean esPar(int x){ Af ((xk2)==8) return true; else return false; class Paranetrodeno { public static void main(String[] args) { ConprobarNunero e=new ComprobarNunero(); if (e.esPar(10)) Systen.out.printn("10 es par."); if (e.esPar(9)) Systen.out.printla("9 es par.")5 Af (e.esPar(8)) Systen.out.printla("8 es par.")3 Salida: Polltica de Privacidad & Cookies hitps:lfavadesdecero.es/poo!metados-con-sjemplos! arte sara 17:10 Mélodos an Java con Ejamplos | Java desde Cero 20 es par. 8 es par. En el programa, esPar{) se llama tres veces y cada vez se pasa un valor diferente, Miremos este proceso de cerca. Primero, observe cémo se llama esPar(). El argumento se especifica entre paréntesis. + Cuando se usa esPar() la primera vez, se pasa al valor 10. Por lo tanto, cuando esPar{) comienza a ejecutarse, el pardmetro x recibe el valor de 10. + Enla segunda llamada, 9 es ol argumento, y x, entonces, tiene el valor de 9, + Enla tercera llamada, el argumento es 8, que es el valor que recibe x. El punto es que el valor pasado como argumento cuando se llama a esPar() es el valor recibido por su x pardmetro, x. Un método puede tener mas de un pardmetro. Simplemente declare cada parametro, separando uno del siguiente con una coma, Por ejemplo, la clase Divisor define un método llamado esDivisor() que determina si el primer parmetro es divisor del segundo. /10n ejemplo sienple del uso de pardmetros class Divisor { //Retorna true si x es par boolean esDivisor(int a, int b){ if ((bka)==@) return true; else return false; class DivisorDeno { public static void main(String] args) ( Divisor x =new Divisor(); Sf (x.esDivisor(2,20)) Systen.out. printin( if (x.esDivisor(3,20)) Systen.out.printIn( es Divisor de 20"); es Divisor de 20"); Salida: 2 es Divisor de 20 ‘Tenga en cuenta que cuando se llama a esDivisor(), los argumentos también estan separados por comas. Al usar mittiples parémetros, cada parémetro especifica su propio tipo, que puede diferir de los demas, Por ejemplo, esto es perfectamente valido: int miMetodo(int a, double b, float c) ( Wore Politica de Privacidad & Cookies hitps:lfavadesdecero.es/poo!metados-con-sjemplos! arte 19922 17:10 ‘Métodos en Java con Ejemples | Java deste Cero ps:/hww.pixfuture.com/advertis 0348293521d) Compartir f VinO@ ts oe Sobre el Autor: Alex Walton (https://javadesdecero.es/author/qzal0/) Hey hola! Yo soy Alex Walton y tengo el placer de compartir conocimientos hacia ti sobre el tema de Programacién en Java, desde cero, Online y Gratis, ARTICULOS RELACIONADOS \VARARGS:ARGUMENTOS VARIABLES EN JAVA ‘CLASES INTERNAS LOCALES EN JAVA CLASES AMOADAS EN JAVA (hitps:ifjavadesdecero.es/intermedio (htlps:/javadesdecero.es/poo/clase _(htips:/javadesdecero.es/poo/clase Ivarargs-argumentos-variables/) _seinternas-locales/) s-anidadas/) 5 COMENTARIOS Anénimo + marzo 31, 2018 at 5:15 am (https:/javadesdecero.es/poo/metodos-con-ejemplos/#comment-44) Visitor Rating: 5 Stars Politica de Privacidad & Cookies Iitps:tjavadesdecero.es/poo!metodos-comejemplos! sone sara 17:10 Mélodos an Java con Ejamplos | Java desde Cero Alex Walton 6 marzo 31, 2018 at 8:39 pm (https:lljavadesdecero.es/poo/metodos-con-jemplosi##comment-46) Visitor Rating: 5 Stars francisco 5 mayo 3, 2019 at 10:52 am (hitps:l/javadesdecero.es/poo/metodos-con-ejemplositfcomment-664) Hi Alex Estoy con una practica de universidad. He conseguido hacer algunas cosas, pero he llegado a un punto del que ya no se continuar. Me pregunto si puedo hacer algunas consultas, pero ya fuera de este foro. mi nombre es francisco y te dejo mi direccion de correo. {[email protected] (mailto:francisco [email protected]) Eduardo 6 junio 9, 2021 at 3:47 pm (https://javadesdecero.es/poo/metodos-con-ejemplos/##comment-1329) hola paquito fenomeno, hablame por wasa y te echo una mano 664987213 6 “METODOS Java" Code de réponse - Coder les réponses (https:/ifireservices.infolmetodos- java-code-de-reponse/) noviembre 11, 2021 at 10:56 am (httpsi/javadesdecero.es/poo/metodos-con-ejemplosittcomment-1441) [...] La Source METODOS JAVA ...] DEJA UNA RESPUESTA Comentario Nombre * Polltica de Privacidad & Cookies hitps:lfavadesdecero.es/poo!metados-con-sjemplos! wie sara 17:10 Mélodos an Java con Ejamplos | Java desde Cero Email * ENVIAR Este sitio usa Akismet para reducir el spam. Aprende cémo se procesan los datos de tus comentarios (https://akismet.com/privacy/). Buscar CATEGORIAS Arrays (hitps:ljavadesdecero.es/categorialarrays/) ‘Avanzado (hitps:ljavadesdecero.es/categoria/avanzado!) Basico (https:ijavadesdecero.es/categoria/basico/) Blog (https:/javadesdecero.es/categoria/blog!) Clases (hitps:i/javadesdecero.es/categorialclases/) Codigos (nttps:lfavadesdecero.es/categorialcodigos!) Fundamentos (hitps:iljavadesdecero.es/categoria/fundamentos/) Intermedio (https:l/javadesdecero.es/categorialintermedio/) 10 (https:/ijavadesdecero.esicategoria/io/) Palabra Clave (https://javadesdecero.esicategoria/palabra-clave/) POO (hitpsilliavadesdecero.esicategorialpoo!) Variado (https:/avadesdecero.es/categorialvariado!) ULTIMAS PUBLICACIONES Politica de Privacidad & Cookies hitps:lfavadesdecero.es/poo!metados-con-sjemplos! sane 19922 17:10 (https:ifjavadesdecero .esicodigos/calculador (httpsijavadesdecero .es/blogimejores- (https:javadesdecero esiblogihistoria- ‘Métodos en Java con Ejemples | Java deste Cero Una Sencilla Calculadora en Java: Cédigo Fuente (httpsilljavadesdecero.es/codigos/calculadora-codigo-fuente/) Los 10 Mejores Juegos de Java Antiguos (y Datos Interesantes sobre ellos) {httpsilljavadesdecero.es/blogimejores-juegos-java-antiguos/) Cémo han Cambiado los Juegos basados en Java con el Tiempo {httpsilljavadesdecero.es/blogihistoria-juegos-basados-javal) [NR 008-5 a ORACLE + intel. Dile hola al futuro del almacenamiento de datos en la nube Oracle Autonomous Data Warehouse (hitps://www.pixfuture.com/advertisers/? id0348293521d) Politica de Privacidad & Cookies Iitps:tjavadesdecero.es/poo!metodos-comejemplos! 13a sara 17:10 Métodos an Java con Ejamplos | Java desde Cero © Java, 2021, Todos los derechos reservados. Java desde Cero (https:/www.google.es/url? j&q=aprender%20%java%20%desde%20%cero&esrc=s&url=https%3A%2F %2Fwww.javadesdecero.es%2F) | Términos y Condiciones (https://javadesdecero.es/terminos-y-condiciones-uso/) Politica de Privacidad & Cookies hitps:lfavadesdecero.es/poo!metados-con-sjemplos! sane

También podría gustarte