Metodosenjava 110504201809-phpapp02

26
Métodos en Java

Transcript of Metodosenjava 110504201809-phpapp02

Page 1: Metodosenjava 110504201809-phpapp02

Métodos en Java

Page 2: Metodosenjava 110504201809-phpapp02

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

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

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

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

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

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

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

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

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

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

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

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

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

Ejemplo

Page 16: Metodosenjava 110504201809-phpapp02

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

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

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

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

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

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

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

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

Métodos de la Clase Math

Page 25: Metodosenjava 110504201809-phpapp02

Referencia Bibliográfica

medusa.unimet.edu.ve/programacion/bppr11/.../claseMetodos.ppt

Page 26: Metodosenjava 110504201809-phpapp02

Desarrolle la calculadora utilizando metodos.