Title: Mtodos en Java
1Métodos en Java
2Métodos
- La mejor forma de crear y mantener un programa
grande, es construirlo a partir de piezas más
pequeñas o módulos. - Cada uno de los cuales es más manejable que el
programa en su totalidad.
3Métodos
- Los métodos(subprogramas em Algoritmos) también
son utlizados para evitar la repetición de código
en un programa al poder ejecutarlo desde varios
puntos de un programa con sólo invocarlo.
4Métodos
- Esta técnica de descomposición se denomina
Divide y vencerás. - Los módulos en Java se denominan métodos.
- Un método se invoca ,es decir, se le pide
realizar su tarea designada con una llamada de
método.
5Métodos
- La llamada a métodos especifica el nombre del
método y proporciona la información (en forma de
argumentos) cuando el método lo necesite para
hacer su trabajo.
- El formato de una definición de método es
- tipo-de-valor-devuelto nombredelmétodo(lista-param
) -
- declaraciones y sentencias
6Métodos
- Casi todos los métodos tienen una lista de
parámetros los parámetros de un método también
son variables locales. - Es recomendable limitar los métodos a realizar
una sola tarea bien definida y el nombre del
método debe expresar efectivamente dicha tarea.
7Métodos
- El nombre es cualquier identificador válido.
- El tipo-de-valor-devuelto es el tipo de dato del
resultado, que el método devuelve al invocador. - El tipo-de-valor-devuelto void indica que el
método no devuelve ningún valor.
8Métodos
- Omitir el tipo-de-valor-devuelto en una
definición de método causa un error de sintaxis. - Olvidar devolver un valor desde un método que se
supone debe devolver un valor es un error de
sintaxis.
9Métodos
- Si se especifica un tipo-de-valor-devuelto
distinto de void el método debe contener una
sentencia return. - Devolver un valor de un método cuyo tipo devuelto
se ha declarado void causa un error de sintaxis.
10Métodos
- Todas las variables declaradas en las
definiciones de los métodos son variables
locales solo se conocen - en el método en el que se definen.
static int sumarNum(int e) ee System.ou
t.println(e) return e //Este método retorna
un valor
11Métodos
- La lista-de-parámetros es una lista separada por
comas que contiene las declaraciones de los
parámetros que el método recibe cuando es
invocado. - Si un método no recibe valores, se coloca un
juego de paréntesis vacío ( ) después del nombre
del método.
12Métodos
- Declarar parámetros para un método que poseen el
mismo tipo float x,y en lugar de float x, float y
producirá un error de compilación porque se
requiere un tipo para cada parámetro. - Colocar punto y coma después del paréntesis que
encierra la lista de parámetros es un error de
sintaxis.
Esta es una declaración de un método que contiene
2 errores.
static void Calcular (float x,y)
13Métodos
- Definir una variable local de un método igual que
un parámetro es un error de sintaxis.
Ejemplo
- class CCmporvalor
-
- public static void main(String args)
-
- int a10
- System.out.println(a)
- SumarNum(a)
- System.out.println(a)
-
-
- static int SumarNum(int e)
-
- ee
- System.out.println(e)
- return e //Este método retorna un valor
-
-
14Métodos
- Definir un método dentro de otro es un error de
sintaxis. - Existen tres formas de devolver el control al
punto en el que se invocó un método - a) Si el método no devuelve un resultado el
control se devuelve cuando se llega a la llave
derecha que termina el método. -
- b) Al ejecutarse la sentencia return también,
si el método NO devuelve ningún resultado. - c) return expresión
15Ejemplo
16Entrada v1,v2,v3 numéricos Inicio Programa
Principal V1,v2,v3,promn,mayornuméricos Procesar
IntroDatos //Llamada a un subprograma tipo
procedimiento promn? Procesar Calprom //Llamada
a un subprograma tipo función Procesar
Imprime(promn) Mostrar (El mayor es mayor
?Procesar Max) Terminar Programa Principal
17class CPrueba //Clase (Programa)
static int v1,v2,v3//Números enteros declarados
en forma Global public static void main
(String args ) //Método principal float
prom IntroDatos() //Llamada a un método que no
devuelve nada promCalcProm() //Llamada a un
método tipo función Imprime(prom) //Llamada a
un método con pase de parámetros System.out.print
ln("El mayor " Max( ))
18Inicio IntroDatos Mostrar (Introduce el primer
valor v1) Leer v1 Mostrar (Introduce el segundo
valor v2) Leer v2 Mostrar (Introduce el tercer
valor v3) Leer v3 Regresar
19static void IntroDatos() //Método que no devuelve
ni recibe nada System.out.println("introduce
el valor V1 ") v1CTeclado.ReadInt( )
System.out.println("introduce el valor V2 ")
v2CTeclado.ReadInt( ) System.out.println("in
troduce el valor V3 ") v3CTeclado.ReadInt(
)
20Inicio Calcprom aux numérico aux?
(v1v2v3)/3 Retornar aux
Inicio Imprime valornumérico Mostrar
(Promedio) Mostrar (valor) Regresar
21- static float CalcProm( ) //Método que devuelve
un valor -
- float aux
- aux(v1v2v3)/3 //V1,V2,V3
variables globales - return aux // Valor que retorna el método
-
-
- static void Imprime(float valor)//Observe el
cambio de nombre -
- System.out.print("Promedio ")
- System.out.println(valor)
-
-
22Inicio Max auxnumérico aux ?0 Si ((v1gtv2)and
(v1gtv3)) entonces Aux?v1 Si ((v2gtv1)and(v2gtv3))
entonces Aux?v2 Si ((v3gtv1)and(v3gtv2))entonces A
ux?v3 Retornar aux.
23- static int Max() // Método que retorna un
valor -
- int aux0
-
- if((v1gtv2)(v1gtv3))
-
- auxv1
-
- if((v2gtv1)(v2gtv3))
-
- auxv2
-
- if((v3gtv1)(v3gtv2))
-
- auxv3
-
-
- return aux
-
//V1,V2,V3 variables globales