INGENIERIA EN SISTEMAS COMPUTACIONALES ASIGNATURA PROGRAMACION ORIENTADA A

  • Slides: 15
Download presentation
INGENIERIA EN SISTEMAS COMPUTACIONALES ASIGNATURA: PROGRAMACION ORIENTADA A OBJETOS INTEGRANTES: MAGALY SALAZAR GARCIA STEPHANNIE

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

SOBRECARGA DE METODOS Es una de las formas en que Java implementa el polimorfismo.

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.

 Para que el compilador pueda determinar a que método nos referimos en un

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

EJEMPLO: Para establecer las dimensiones de un objeto (anchura, profundidad, altura) en una medida

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)

 Cuando realicemos una llamada al método Dimensiones(…), el compilador podrá determinar a cual

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.

 Un método se determina por su firma. La firma se compone del nombre

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.

 Los métodos sobrecargados pueden contener distinto numero de parámetros: Dimensiones( String Medida) Dimensiones(double

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

 En las líneas : prívate double X = 0 d prívate double Y=

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

 En las líneas: Public void Dimensiones 3 D(double Ancho, double Alto, double Profundo){

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

 En la línea public void Dimensiones(double Ancho, double Alto, double Profundo, String Medida)

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.

 Los últimos 4 métodos : Dime. Alto Dime. Ancho Dime. Profundo Dime. Medida

Los últimos 4 métodos : Dime. Alto Dime. Ancho Dime. Profundo Dime. Medida Nos permiten conocer los valores de las propiedades de la clase, aumentando la funcionalidad de la clase Objetos 3 D.

CLASE OBJETOS 3 D En las líneas: Objeto 3 D Caja= new Objeto 3

CLASE OBJETOS 3 D En las líneas: Objeto 3 D Caja= new Objeto 3 D(); Objeto 3 D Esfera= new Objeto 3 D(); Objeto 3 D Bicicleta = new Objeto 3 D(); Se declaran y definen tres instancias de la clase Objeto 3 D.

 En las líneas: Caja. Dimensiones(20. 0, 12. 5, 30. 2, ”centimetros”) ; Esfera.

En las líneas: Caja. Dimensiones(20. 0, 12. 5, 30. 2, ”centimetros”) ; Esfera. Dimensiones(10. 0, ”pulgadas”, 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 : Objeto 3 D Bicicleta = new Objeto 3 D();

 Las líneas: System. out. println( Bicicleta. Dime. Medida() ); System. out. println( Bicicleta.

Las líneas: System. out. println( Bicicleta. Dime. Medida() ); System. out. println( Bicicleta. Dime. Alto() ); 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( Dime. Medida() );

GRACIAS POR SU ATENCION

GRACIAS POR SU ATENCION