Aorganizacinpolticadassociedades 111129105318-phpapp02-111201111522-phpapp02
Metodosenjava 110504201809-phpapp02
Transcript of Metodosenjava 110504201809-phpapp02
![Page 1: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/1.jpg)
Métodos en Java
![Page 2: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/2.jpg)
Mé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.
![Page 3: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/3.jpg)
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.
Métodos
![Page 4: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/4.jpg)
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.
Métodos
![Page 5: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/5.jpg)
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.
Métodos
El formato de una definición de método es:
tipo-de-valor-devuelto nombredelmétodo(lista-param)
{
declaraciones y sentencias
}
![Page 6: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/6.jpg)
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.
Métodos
![Page 7: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/7.jpg)
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.
Métodos
![Page 8: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/8.jpg)
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.
Métodos
![Page 9: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/9.jpg)
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.
Métodos
![Page 10: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/10.jpg)
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.
Métodos
static int sumarNum(int e)
{
e+=e;
System.out.println(+e);
return e; //Este método retorna un valor
}
![Page 11: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/11.jpg)
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.
Métodos
![Page 12: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/12.jpg)
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.
Métodos
static void Calcular (float x,y);Esta es una declaración de un método que contiene 2 errores.
![Page 13: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/13.jpg)
Definir una variable local de un método igual que un parámetro es un error de sintaxis.
Métodos
class CCmporvalor
{public static void main(String args[]){
int a=10;System.out.println(a);SumarNum(a); System.out.println(a);
}
static int SumarNum(int e){
e+=e;System.out.println(e);return e; //Este método retorna un valor
}}
Ejemplo:
![Page 14: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/14.jpg)
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;
Métodos
![Page 15: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/15.jpg)
Ejemplo
![Page 16: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/16.jpg)
Entrada: v1,v2,v3 :numéricos
Inicio Programa Principal
V1,v2,v3,promn,mayor:numé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
![Page 17: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/17.jpg)
class 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
prom=CalcProm(); //Llamada a un método tipo función
Imprime(prom); //Llamada a un método con pase de parámetros
System.out.println("El mayor: "+ Max( ));
}
![Page 18: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/18.jpg)
Inicio 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
![Page 19: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/19.jpg)
static void IntroDatos() //Método que no devuelve ni recibe nada
{
System.out.println("introduce el valor V1: ");
v1=CTeclado.ReadInt( );
System.out.println("introduce el valor V2: ");
v2=CTeclado.ReadInt( );
System.out.println("introduce el valor V3: ");
v3=CTeclado.ReadInt( );
}
![Page 20: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/20.jpg)
Inicio Calcprom
aux: numérico
aux (v1+v2+v3)/3
Retornar aux
Inicio Imprime
valor:numérico
Mostrar (“Promedio”)
Mostrar (valor)
Regresar
![Page 21: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/21.jpg)
static float CalcProm( ) //Método que devuelve un valor{
float aux;aux=(v1+v2+v3)/3; //V1,V2,V3 variables globalesreturn 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);
}
![Page 22: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/22.jpg)
Inicio Max
aux:numérico
aux 0
Si ((v1>=v2)and (v1>=v3)) entonces
Auxv1
Si ((v2>=v1)and(v2>=v3))entonces
Auxv2
Si ((v3>=v1)and(v3>=v2))entonces
Auxv3
Retornar aux.
![Page 23: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/23.jpg)
static int Max() // Método que retorna un valor {
int aux=0;
if((v1>=v2)&&(v1>=v3)) {
aux=v1;}if((v2>=v1)&&(v2>=v3)) {
aux=v2;}if((v3>=v1)&&(v3>=v2)) {
aux=v3;}
return aux;}
}// fin de clase
//V1,V2,V3 variables globales
![Page 24: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/24.jpg)
Métodos de la Clase Math
![Page 25: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/25.jpg)
Referencia Bibliográfica
medusa.unimet.edu.ve/programacion/bppr11/.../claseMetodos.ppt
![Page 26: Metodosenjava 110504201809-phpapp02](https://reader036.fdocuments.ec/reader036/viewer/2022062419/557dfbd9d8b42a20128b4699/html5/thumbnails/26.jpg)
Desarrolle la calculadora utilizando metodos.