Reglas para valores de retorno de métodos en Java

Todos los programadores estamos familiarizados con el uso de funciones y métodos en cualquier lenguaje de programación, sabemos que normalmente se puede (o no) recibir uno o más valores y devolver (o no) a su vez uno o más valores (dentro de un arreglo).

En Java existen algunas reglas al momento de devolver un valor por medio de un método. Las reglas son pocas, relativamente sencillas pero sumamente importantes y se listan a continuación:

1. Se puede devolver un valor null en un método con una referencia a un objeto como tipo de retorno:

public Button hacerAlgo(){
return null;
}

2. Un arreglo es un tipo de retorno perfectamente legal:

public String[] hacerAlgo(){

return new String[] {"hugo","paco","luis"};

}

3. En un método con un primitivo como tipo de retorno, se puede devolver cualquier valor o variable que pueda ser implícitamente convertida hacia el tipo de retorno declarado:

public int hacerAlgo(){

char c = 'c';
return c; //un char es compatible con int
}

4. En un método con un primitivo como tipo de retorno, se puede devolver cualquier valor o variable que pueda ser explícitamente convertida hacia el tipo de retorno declarado:

public int hacerAlgo(){

float f = 32.5f;
return (int) f;

}

5. No debes de devolver nada en un método que tiene void como tipo de retorno:

public void hacerAlgo(){

return "hola mundo"; //Ilegal!

}


6. En un método con un objeto como tipo de retorno se puede devolver cualquier tipo de objeto que pueda ser implícitamente convertido hacia el tipo de retorno declarado:

public Animal getAnimal(){

return new Perro; //Asumiendo que Perro extends Animal

}
Estas fueron las reglas a tomar en cuenta al momento de crear y utilizar métodos en Java.

Alguna duda o algo que decir? Deja tu comentario. Saludox.

3 comentarios:

  1. Anónimo dijo...:

    mil gracias me sirvio de mucho

  1. Jared Guerrero dijo...:

    Tengo una duda. ¿Por que al retornar 'c' del ejemplo 3, imprime 99? Porque el método regresará valores en entero e imprime en caracter?

  1. No puedo crear un metodo en donde retorne dos valores?

Publicar un comentario

Este es un espacio abierto, puedes escribir lo que gustes respetando los siguientes puntos:

1.- Lo que escribas esté relacionado con el post, si gustas contactarme puedes hacerlo aqui.

2.- Todo es cuestionable, aunque ten en cuenta que existen formas de hacerlo, evita las agresiones y revisa tu lenguaje antes de publicar un comentario.

3.- Siempre hay tres verdades: tu verdad, mi verdad y la verdad, por lo que opiniones diferentes no necesariamente son equivocadas.

4.- Los comentarios son una forma de discusión abierta, por lo que al publicar uno, implícitamente entras a una discusión, con todo lo que esto representa.

5. Me reservo el derecho de eliminar comentarios que no respeten las condiciones mencionadas anteriormente.

Toma en cuenta que puedes utilizar emoticones en tu comentario, para ver una lista de los disponibles da clic en este enlace.

 
Monillo007 © 2010 | Designed by Trucks, Manual Bookmarking | Elegant Themes