Vous êtes sur la page 1sur 12

MTODOS PROCEDIMIENTO (VOID) Y FUNCIN (RETURN)

Volvamos sobre los objetos taxi creados y que deben aparecer en el banco de objetos en la parte inferior

izquierda de la pantalla del entorno de desarrollo. Si pulsamos con botn derecho del ratn sobre ellos se
nos despliegan los mtodos (operaciones) disponibles para cada objeto.

Pulsa sobre el taxi1 y elige la opcin String getDistrito.

La ejecucin de un mtodo se denomina habitualmente invocacin del mtodo o llamada al

mtodo. Los mtodos disponibles los define la clase, pero se invocan sobre cada objeto en particular. Al

invocar el mtodo getDistrito() se nos abre una ventana de BlueJ denominada Method Result donde nos

indica: returned String Desconocido. Le hemos pedido al objeto que nos diga cul es su distrito y nos
devuelve Desconocido. La razn para ello es que en el constructor de la clase incluimos una lnea de
inicializacin de distrito para todo objeto de tipo Taxi con el valor Desconocido. Si en vez de ese valor
hubisemos establecido otro, ese sera el que ahora obtendramos.

Cierra esa ventana y repite el proceso eligiendo ahora la opcin void setDistrito (String valorDistrito). En el

recuadro donde solicita el distrito escribe Oeste. No olvides incluir las comillas obligadas por tratarse de
un String. Seguidamente, vuelve a invocar el mtodo getDistrito y comprueba el resultado obtenido.

Los mtodos que hemos definido en la clase Taxi podemos clasificarlos de la siguiente manera:

a) Mtodos tipo funcin: son mtodos que nos devuelven algo. Un mtodo es tipo funcin si comienza

con un tipo (no consideramos ahora la palabra clave public). Por ejemplo String getDistrito() comienza con

el tipo String lo que significa que nos devuelve una cadena de caracteres, mientras que int getTipoMotor()

comienza con el tipo int lo que significa que nos devuelve un entero. Tener en cuenta que un mtodo tipo

funcin devuelve solo un dato u objeto como resultado, no varios. La devolucin del resultado se expresa

con la palabra clave return seguida del dato u objeto a devolver, por ejemplo return tipoMotor;. La sentencia

return implica que termina la ejecucin del cdigo en el mtodo y estar tpicamente en la lnea final. De

existir una lnea por detrs de una sentencia return, nunca llegara a ejecutarse (tendremos que matizar
esto porque el uso de condicionales nos permitir tener ms de un return en un mtodo). De forma genrica:

/* Ejemplo - aprenderaprogramar.com */
//Comentario descriptivo de qu hace el mtodo
public tipoValorDevuelto nombreDelMtodo (tipo parmetro1, tipo
parmetro2) {
Cdigo del mtodo
return ResultadoQueDevuelveElMtodo;
}

b) Mtodos tipo procedimiento: son mtodos que realizan ciertas operaciones sin devolver un valor u

objeto concreto. Un mtodo es tipo procedimiento si comienza con la palabra clave void (que traducido del

ingls viene siendo vaco o nulo). En estos casos podemos decir que el tipo de retorno es void. De forma
genrica:

/* Ejemplo - aprenderaprogramar.com */
//Comentario descriptivo de qu hace el mtodo
public void nombreDelMtodo (tipo parmetro1, tipo
parmetro2) {
Cdigo del mtodo
}

En general un mtodo con tipo de retorno void no llevar sentencia return, aunque en Java se permite que

un mtodo de este tipo incluya la sentencia return;. Si ocurre esto, la sentencia da lugar a que el mtodo

finalice en ese punto sin ejecutar ninguna lnea ms de cdigo. Solo tiene sentido su uso asociado a que se
cumplan ciertas condiciones.

Puede un mtodo ser al mismo tiempo funcin y procedimiento? Formalmente debemos evitarlo.

Podramos tratar de agrupar operaciones, pero es una situacin que trataremos de evitar. Nos plantearemos

como objetivo que todo mtodo tipo funcin se centre en devolvernos aquello que nos interesa sin realizar

otros procesos. Igualmente buscaremos que todo procedimiento realice un proceso concreto y no varios.

Cada mtodo debe realizar una tarea concreta, especfica y bien definida. Un mtodo no debe ocuparse de
dos tareas.
METODOS, FUNCIONES Y
CLASES EN JAVA
Sin descripcin
de
el 25 de Junio de 2014
558

Comentarios (0)
Por favor, entra para aadir tu comentario.
Informar sobre uso indebido

Transcripcin de METODOS, FUNCIONES Y CLASES EN JAVA


FUNCIONES
Las clases marcan la estructura bsica de un programa tanto en Java como en la
programacin orientada a objetos en general. Una clase es el producto de enfocar la
programacin a los datos ms que a las funciones.
CLASES
METODOS
Un mtodo en Java es un conjunto de instrucciones definidas dentro de una clase, que
realizan una determinada tarea y a las que podemos invocar mediante un nombre.
Una clase puede contener cualquiera de los siguientes variables:
- Variables locales: Las variables definidas dentro de los mtodos, los constructores o
los bloques se denominan variables locales. Se declara la variable y se inicializa en el
mtodo y la variable ser destruida cuando el mtodo se ha completado.
- Variables de instancia: Las variables de instancia son variables dentro de una clase,
pero fuera de cualquier mtodo. Estas variables se crean instancias cuando se carga la
clase. Las variables de instancia se puede acceder desde el interior de cualquier mtodo,
constructor o bloques de esa clase en particular.
- Variables de clase: Las variables de clase son variables declaradas dentro una clase y
fuera de cualquier mtodo. En el ejemplo anterior marca, kilometraje y color son
variables de clase Carro. Una clase en Java puede tener cualquier nmero de mtodos
para acceder o modificar el comportamiento de dicha clase.
VARIABLES DE LAS CLASES
Cuando declaramos una clase lo primero que ponemos es la cabecera: public class
Fichas { (cuerpo de la clase) } La primera palabra nos proporciona la posibilidad de dar
permisos de accesos a nuestra clase la estructura de una clase explicar los elementos
habituales en la definicin de su cuerpo. Primero se suelen declarar, al menos, las
variables internas de
Una funcin es un conjunto de instrucciones que ejecutan una rutina y devuelven un
resultado. En La Funcin se debe definir el tipo de dato del resultado y el nombre que
identifica
a la funcin, sta permite que
reutilicemos un algoritmo.
METODOS, FUNCIONES Y CLASES EN JAVA
Las primeras son de tipo computacional que son diseadas para realizar operaciones
con los argumentos y regresan un valor basado en el resultado de esa operacin.
Las segundas funciones son aquellas que manipulan informacin y regresan un valor
que indican la terminacion o la falla de esa manipulacion
Las terceras son aquellas que no regresan ningun valor, es decir son estrictamenta
procedurales.

CLASES DE FUNCIONES
Creemos un mtodo que realice la suma de dos nmeros, el cdigo sera el siguiente:

private void MetodoSuma(float numero1, float numero2){


float Suma=numero1+numero2;
System.out.println(Suma);
}

EJEMPLO
Pasos para implementar un mtodo:
1. Describir lo que el mtodo debe hacer
2. Determinar las entradas del mtodo
3. Determinar los tipos de las entradas
4. Determinar el tipo del valor retornado
5. Escribir las instrucciones que forman el cuerpo del mtodo
6. Prueba del mtodo: disear distintos casos de prueba
Cuando se llama a un mtodo, la ejecucin del programa pasa al mtodo y cuando ste
acaba, la ejecucin contina a partir del punto donde se produjo la llamad

Funciones Mtodos en Java: Parte 1


Debido a que para muchas personas resulta complicado estar compilando las clases
en la Consola de Comandos, yo recomiendo descargar TextPad en la versin 4, ya
que la 5 por alguna razn a mi no me gusta, creo que tiene varios detallitos por ah
que an estn mal o funcionan diferente y por ello no me agrada. As que a
descargar TextPad!

http://www.textpad.com/download/

(Descarga la versin que ms te agrad y en el idioma que t prefieras)

Instala el programa, el cul no tiene mayor complicacin (Siguiente -> Siguiente ->
Finalizar). Ahora TextPad ser nuestro editor de texto, con lo que haremos las
llamadas al compilador y con lo que se harn las llamadas para ejecutar el
programa (adems de que tiene colorcitos =D ), para no tener que ejecutar el
compilador y JVM desde la lnea de comandos.

Para compilar un archivo slo tienes que ir al men Herramientas -> Compilar Java
y para crrerlo, una vez compilado, ve a Herramientas -> Ejecutar Aplicacin Java.
Bien ahora que esto ya qued entendido, vamos ahora s a nuestro tema central,
los mtodos!

Qu es un mtodo?

Un mtodo es una funcin que puede ser llamado y que ejecutar una serie de
instrucciones para que nuestro programa sea ejecutado. En Java la mayora de
instrucciones siempre estar dentro de un mtodo, en realidad siempre irn dentro
de un mtodo excepto en algunos casos, pero de momento ese no es nuestro tema
de estudio.

Recordando nuestro programa HolaMundo recordars el mtodo Principal:

public static void main(String[] args) {

System.out.println("Hola Mundo!");

Los mtodos en Java siempre estarn escritos con esa estructura:

<modificadores> <tipo> <nombre> ( <parmetros> ) {

<cuerpo>

MODIFICADORES: Son opciones que indicarn el comportamiento del mtodo al


momento de la ejecucin.

TIPO DE RETORNO: Es el tipo de datos que sern obtenidos una vez que la
ejecucin del mtodo termine.

NOMBRE: Es el identificador y nombre de la funcin mtodo.


PARMETROS: La informacin que le enviaremos al mtodo para que este haga lo
que supuestamente tiene que hacer!

CUERPO: Las instrucciones que nuestro mtodo va a ejecutar.

Bien ahora slo para que lo veas con nuestro mtodo principal:

MODIFICADORES: public static

TIPO DE RETORNO: void (Significa que no regresa ninguna informacin)

NOMBRE: main

PARMETROS: String [] args (Un arreglo de String el cual veremos ms adelante)

CUERPO: System.out.println("Hola Mundo!");

Bien ahora siguiendo esa misma lgica podemos definir un mtodo para sumar dos
nmeros decimales (El tipo de datos decimal en Java es double) a y b.

MODIFICADORES: public static

TIPO DE RETORNO: double (Porque al sumar dos nmeros decimales obtenemos


otro nmero decimal).

NOMBRE: suma

PARMETROS: double a, double b (El mtodo recibe dos parmetros, para realizar
una funcin que sume dos nmeros debemos recibir esos dos nmeros...muy fcil
no? )

Entonces nuestro mtodo queda escrito de la siguiente forma y slo nos falta definir
el cuerpo, es decir, cmo es que nuestro mtodo realizar la suma de esos
nmeros:

public static double suma( double a, double b ) {

}
El cuerpo de este mtodo es muy simple ya que slo tenemos que sumar a + b y
regresar el valor de esa suma.

public static double suma(double a, double b) {

return a + b;

Sencillo no? Tenemos una funcin de nombre suma, que recibe dos parmetros
(a,b) y que una vez que se ejecute obtendremos un valor decimal (double).

Entonces llamemos a nuestro mtodo obtendremos algo ms o menos as

suma (5 , 6 ) -> REGRESA: 11

suma (11,12) -> REGRESA: 23

Ahora, para realizar algunas pruebas lo nico que tenemos que hacer, cmo ya
sabes! es poner todo dentro de una clase, y colocar un mtodo principal, el cul es
el punto de inicio del programa.

public class Metodos {

public static void main(String[] args) {

System.out.println( suma(5,6) );

System.out.println( suma(11,12) );

public static double suma(double a, double b) {

return a + b;

}
Que son los metodos y
como utilizarlos en java
Java como todo lenguaje de programacin orientado a objetos utiliza los llamados metodos. Acontinuacin
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 operacin 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 multiplicacin.

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?

01 package ciclos;
02
03 /**
04 *
05 * @author xymind
06 */
07 public class Main {
08
09 /**
10 * @param args the command line arguments
11 */
12 public static void main(String[] args) {
13
14 int x=0;
15 while(x!=7)
16 {
17 System.out.println("X vale: "+x);
18 x++;
19
20 }
21 }
22
23 }

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

01 package ciclos;
02
03 /**
04 *
05 * @author xymind
06 */
07 public class Main {
08
09 /**
10 * @param args the command line arguments
11 */
12 public static void main(String[] args) {
13
14 iniciarCiclo();//aqui estamos ejecutando el metodo escrito en
15 //la parte de abajo, se puede utilizar mas de 1 vez
16 }
17
18 /*Comienza el metodo
19 Este metodo no regresa valores, es un metodo que unicamente
realiza un procedimiento, por lo que se declara como "void"
20
seguido del
21 nombre que tendra el metodo*/
22 public void iniciarCiclo(){
23
24 int x=0;
25 while(x!=7)
26 {
27 System.out.println("X vale: "+x);
28 x++;
29
30 }
31 }
32
33 }

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:
..//

1 public int obtenerValor(){


2 int x=10;
3 return x;
4}

//..
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//

1 int variable;
2
variable = obtenerValor(); //estamos diciendo que variable vale
3
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:
..//

1 public int obtenerValor(int parametro){


2 //notese que dentro de los parentesis se declara una variable
3 //esta variable es el parametro
4 int x=parametro/2;
//utilizamos una variable x para calcular el parametro dividido
5
entre 2

6 return x;//se obtiene finalmente la variable "parametro" dividida


entre 2
7}
//..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 implementacin en codigo seria algo asi:

//..codigo//

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

//..mas codigo//

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

Vous aimerez peut-être aussi