1 / 15

INGENIERIA EN SISTEMAS COMPUTACIONALES

INGENIERIA EN SISTEMAS COMPUTACIONALES. ASIGNATURA: PROGRAMACION ORIENTADA A OBJETOS. INTEGRANTES: MAGALY SALAZAR GARCIA STEPHANNIE RODRIGUEZ BATUN JAVIER MARTINEZ MARTINEZ. SOBRECARGA DE METODOS . Es una de las formas en que Java implementa el polimorfismo.

leroy
Download Presentation

INGENIERIA EN SISTEMAS COMPUTACIONALES

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. INGENIERIA EN SISTEMAS COMPUTACIONALES ASIGNATURA: PROGRAMACION ORIENTADA A OBJETOS INTEGRANTES: MAGALY SALAZAR GARCIA STEPHANNIE RODRIGUEZ BATUN JAVIER MARTINEZ MARTINEZ

  2. SOBRECARGA DE METODOS • Es una de las formas en que Java implementa el polimorfismo. • Es un mecanismo muy útil que permite definir en una clase varios métodos con el mismo nombre.

  3. Para que el compilador pueda determinar a que método nos referimos en un momento dado, los parámetros de los métodos sobrecargados no pueden ser idénticos. • En algunos casos se puede aplicar la conversión automática de tipos Java

  4. EJEMPLO: • Para establecer las dimensiones de un objeto (anchura, profundidad, altura) en una medida dada podemos definir los métodos: • Dimensiones(double Ancho, double Alto, double Profundo, String Medida) • Dimensiones( String Medida, double Ancho, double Alto, double Profundo) • Dimensiones(double Ancho, String Medida, double Alto, double Profundo) • Dimensiones(double Ancho, double Alto, String Medida, double Profundo)

  5. Cuando realicemos una llamada al método Dimensiones(…), el compilador podrá determinar a cual de los métodos nos referimos por la posición del parámetro de tipo String.

  6. Un método se determina por su firma. • La firma se compone del nombre del método, numero de parámetros y tipo de parámetros (por orden de colocación). • De los 5 métodos sobrecargados anteriores, el primero y el ultimo presentan la misma firma, por lo que el compilador generará un error al compilar la clase.

  7. Los métodos sobrecargados pueden contener distinto numero de parámetros: • Dimensiones( String Medida) • Dimensiones(double Ancho, double Alto, double Profundo).

  8. En las líneas : • prívate double X = 0d • prívate double Y= 0d • prívate double Z= 0d • prívate String Tipo Medida= “centímetro” • Se declaran y definen valores iníciales para las propiedades privadas X,Y,Z, TipoMedida.

  9. En las líneas: • Public void Dimensiones3D(double Ancho, double Alto, double Profundo){ • Se define el método Dimensiones3D , que permite asignar valores a las tres dimensiones espaciales de un objeto. • Public void TipoMedida(String Medida){ • Se define el método TipoMedida, que permite asignar un valor a la propiedad del mismo nombre.

  10. En la línea • public void Dimensiones(double Ancho, double Alto, double Profundo, String Medida) • Define el primer método del grupo de 6 métodos sobrecargados Dimensiones. Los tres métodos Dimensiones siguientes simplemente hacen una llamada al primero, ordenando adecuadamente los argumentos de la invocación.

  11. Los últimos 4 métodos : • DimeAlto • DimeAncho • DimeProfundo • DimeMedida • Nos permiten conocer los valores de las propiedades de la clase, aumentando la funcionalidad de la clase Objetos3D.

  12. CLASE OBJETOS3D • En las líneas: • Objeto3D Caja= new Objeto3D(); • Objeto3D Esfera= new Objeto3D(); • Objeto3D Bicicleta = new Objeto3D(); • Se declaran y definen tres instancias de la clase Objeto3D.

  13. En las líneas: • Caja.Dimensiones(20.0,12.5,30.2,”centimetros”); • Esfera.Dimensiones(10.0,”pulgadas”,10.0,10.0); • Bicicleta.Dimensiones(90.0,30.0,20.0); • Se invocan diversas ocurrencias del método sobrecargado Dimensiones. Como en la instancia Bicicleta no se define el tipo de sus medidas, prevalece “centímetro” que ha sido asignada en la instrucción : • Objeto3D Bicicleta = new Objeto3D();

  14. Las líneas: • System.out.println( Bicicleta.DimeMedida() ); • System.out.println( Bicicleta.DimeAlto() ); • Imprimen la medida y la altura de la instancia Bicicleta. • En la línea • Bicicleta.Dimesiones(“pulgadas”); • Se varia el tipo de medida empleada, lo que se reflejara en la línea: • System.out.println( DimeMedida() );

  15. GRACIAS POR SU ATENCION

More Related