Que son los metodos y como utilizarlos en java

Java como todo lenguaje de programación orientado a objetos utiliza los llamados metodos. Acontinuación veremos como se crea un metodo y como se utilizan.
Se podria decir que existen 2 grandes tipos de metodos, el primer tipo de metodo son metodos que realizan procesos, puedes realizar cualquier operación con ellos, sin embargo el proposito es manipular variables existentes. El segundo tipo de metodos son los que realizan un proceso o calculo, y calculan una variable especifica, un ejemplo podria ser un metodo para obtener el valor de una multiplicación.

Estructura de un metodo

Los metodos en java pueden tener parametros, es decir,  que un metodo puede utilizar variables predefinidas para ser utilizadas en sus procesos, Veamos un ejemplo de como hacer un metodo en el siguiente ejemplo

En este ejemplo vemos un programa normal en el cual se ejecuta un ciclo while que imprime numeros del 0 al 7, pero ¿es posible hacerlo utilizando un metodo?

 

package ciclos;

/**
*
* @author xymind
*/
public class Main {

/**
* @param args the command line arguments
*/
public static void main(String[] args) {

int x=0;
while(x!=7)
{
System.out.println("X vale: "+x);
x++;

}
}

}

 

Ahora utilizaremos este mismo programa pero el ciclo se ejecutara en un metodo:

package ciclos;

/**
*
* @author xymind
*/
public class Main {

/**
* @param args the command line arguments
*/
public static void main(String[] args) {

iniciarCiclo();//aqui estamos ejecutando el metodo escrito en
//la parte de abajo, se puede utilizar mas de 1 vez
}

/*Comienza el metodo
Este metodo no regresa valores, es un metodo que unicamente
realiza un procedimiento, por lo que se declara como  "void" seguido del 
nombre que tendra el metodo*/
public void iniciarCiclo(){

int x=0;
while(x!=7)
{
System.out.println("X vale: "+x);
x++;

}
}

}

Los dos anteriores programas hacen exactamente lo mismo a diferencia de que el segundo programa esta utilizando un metodo.

En este ultimo ejemplo se mostrara un metodo que regrese un valor, estos metodos se declaran diferente y siempre deben terminar
con la palabra “return var;” donde “var” es una variable cualquiera del mismo tipo del metodo. Ejemplo:

Declaramos el metodo:
..//

public int obtenerValor(){
int x=10;
return x;
}

//..
Notese que se utiliza “int” en lugar de “void”, lo cual indica que se regresara una variable del tipo integer o numerico, por lo que dentro del metodo se declara int x=10; que es precisamente un valor numerico, y se regresa el valor de x, es decir 10. Finalmente el metodo puede ser usado para obtener el valor de 10 del siguiente modo.

//..codigo…//

int variable;

variable = obtenerValor(); //estamos diciendo que variable vale ahora 10.

//..mas codigo…//

Utilizando parametros

Se puede utilizar parametros en un metodo. En el siguiente ejemplo se utilizara un parametro el cual es un valor que se puede asignar al metodo para realizar operaciones, este puede ser variable y se obtendran diferentes resultados dependiendo del valor asignado.

Declaramos el metodo:
..//

public int obtenerValor(int parametro){
//notese que dentro de los parentesis se declara una variable
//esta variable es el parametro 
int x=parametro/2;
//utilizamos una variable x para calcular el parametro dividido entre 2
return x;//se obtiene finalmente la variable "parametro" dividida entre 2
}

//..vemos que este metodo utiliza un parametro, y el resultado del mismo es este parametro pero dividido entre 2, si el parametro varia, entonces vemos que el resultado tambien.

su implementación en codigo seria algo asi:

//..codigo…//

int variable;

variable = obtenerValor(10); //debido a que el parametro es 10, la variable valdra 5
//pues el metodo regresa la division del parametro entre 2.

//..mas codigo…//

Esta fue una breve introducción acerca de como se utilizan los metodos en java. Se publicara un programa que utiliza metodos en la sección de codigo fuente, revisa esta sección para descargar ejemplos y practicar, pues en cuanto a programación se trata solo se puede aprender practicando. Asi mismo no olvides revisar nuestros video tutoriales para ver ejecución de programas en tiempo real.

Acerca del autor:

Mi nombre es Jorge Villalobos, soy Colombiano de nacimiento y resido en México desde 2005,actualmente soy el creador de codigoprogramacion.com Soy ingeniero en tecnologías de información y comunicaciones y trabajo de tiempo completo desarrollando aplicaciones web. En general me considero un tipo normal, me gusta salir, divertirme, y uno de mis hobbies es programar y hacer tutoriales para compartir conocimiento, me gusta la pizza, el ajedrez y tomar una que otra cerveza los fines de semana. Espero que este proyecto ayude a ayudar a los demás.

Twitter del autor:

26 comments

  1. abraham says:

    Claro tu teoria y ejemplos para aprender rapido. Gracias

  2. Claribel says:

    Gracias… muy buena informacion fue de mucha ayuda :)

  3. tania says:

    gracias!! me sirvio de mucho ¨¨ :)

  4. carolima says:

    no me aporto en nda

  5. HAckingBreak says:

    eRES uN nOVATICO TiO

  6. FABIO says:

    Genial sabes estoy trabajando con netbeans conectado con sql workbench pero tengo algunas dudas quizas me puedas ayudar donde le puedo escribir gracias.

  7. rolando says:

    grasias por esa explicacion

  8. Marcelo says:

    Excelente, básico pero completo y fácil de entender. Me sirvió para refrescar conceptos viejos.

    Saludos

  9. Diego says:

    Buenas, Amigo. Tengo un proyecto en la Universidad. Consiste en crear una hoja de calculo (Como excel) pero en Java. se tiene que mostrar en consola y debemos de usar mas que todo arrays. usted me podria orientar como podria realizar dicho proyecto? gracias

  10. Juan says:

    Excelente, muy claro y concreto. Gracias por compartir sus conociminetos con el mundo

  11. Nelson says:

    Muy bueno tu aporto, me servido un buen… Saludos!!!

  12. hola quiciera que me ayudaras, tengo que utilizar un arreglo para guardar numeros, pero no se como nose cual es el codigo que se utiliza para guardar arrglos….. el programa es: pedir 5 numeros por teclado y mostrarlos ordenados de mayor a menor (utilizar arreglos para guardar los numero)……………….. spe un poco despistada no le entiendo muy bien a la programacion D: :/

  13. esteban says:

    buenas tardes, necesito poder explicar porque al pasarle un array sin valores a println, por ejemplo: String frase[] = new String[5]; y me piden que lo envie directo a System.out.println( frase ); no me da error pero me arrja una dirección de memoria, porque pasa eso?
    desde ya muchas gracias.

  14. esteban says:

    buenas tardes, necesito poder explicar porque al pasarle un array sin valores a println, por ejemplo: String frase[] = new String[5]; y me piden que lo envie directo a System.out.println( frase ); no me da error pero me arrja una dirección de memoria, porque pasa eso?

  15. Ja1 says:

    Hola

    Me parece que tienes un error en el método iniciarCiclo(), debes ponerlo debajo de public class de lo contrario jamás funcionara.

    Saludos

  16. diego says:

    muy buen post bien explicado gracias, ayuda mucho

  17. Leidy M says:

    Muchisimas gracias, que buena explicaciòn!!

  18. mike says:

    gracias carnal, me hacia bolas la profe con los metodos

  19. helen says:

    muy buena explicación jorge, gracias!! como buen Colombiano, demostrando que no solo hacemos cosas malas.. abrazos!

  20. Christian Mulatillo says:

    Te agradesco el tutorial,buena explicacion

  21. Roberto Chavez says:

    Me gusto mucho que pusieras todo el codigo, ya que no sabia donde poner el metodo que ibamos a llamar, nosabia si estaba afuera de la clase o dentro del public static void main(String[] args) {}

  22. KAmus says:

    Hooo algo mas sencillo imposible gran aporte Jorge

  23. KAmus says:

    Hola Jorge Excelente explicacion

  24. marco says:

    buena la informacion que dejas pero me podrias ayudar haciendo un tutorial donde puedas explicar mas detalladamente el uso encapsulamiento objetos y clases te lo agradecería mucho
    saludos…

Leave a Reply

Your email address will not be published. Required fields are marked *