FUNDAMENTALS OF THE JAVA PROGRAMMING LANGUAGE

Slides:



Advertisements
Presentaciones similares
Unidad 3 Lenguajes .Net y POO
Advertisements

Curso de java básico (scjp)
FUNDAMENTALS OF THE JAVA PROGRAMMING LANGUAGE (SL-110) CAPÍTULO 3: ANÁLISIS DE UN PROBLEMA Y DISEÑO DE UNA SOLUCIÓN Ing. Ronald Criollo.
FUNDAMENTALS OF THE JAVA PROGRAMMING LANGUAGE (SL-110) CAPÍTULO 6: CREACIÓN Y USO DE OBJETOS Ing. Ronald Criollo.
Curso de Java Capitulo 7: Continuación Poo Profesor:
Curso de Java Capitulo 7: Conceptos sobre poo Profesor:
POLIMORFISMO UNIDAD 4.
Herencia en C#.
Lenguaje de programación Java
Clases Extendidas La clase extendida hereda los campos y métodos de la clase de la cual extiende. La clase original se conoce como superclase y la clase.
Herencia simple y multiple
Arquitectura CLARO-TECNOTREE
REFERENCIA AL OBJETO DE LA CLASE BASE
Polimorfismo Unidad 4.
La Programación Orientado a Objetos
Inner classes CAPITULO 8.
UNIVERSIDAD LATINA (UNILA) ENCAPSULACION Y HERENCIA
Aplicación del paradigma orientado a objetos
Diseño y programación de
Programación Orientada a Objetos en Java
HERENCIA.
Herencia e Interfaces.
Medio de tele-comunicación
Polimorfismo Lenguajes de Programación II Corporación Universitaria del Caribe CECAR.
Introducción a Java II.
Lic. Rosemary Torrico Bascopé
Abstracción de los datos y Orientación a Objeto Clase 13.
Clases y objetos La unidad fundamental de programación OO son las clases. Conjunto de métodos y semántica Qué se va a hacer POO Clase: que define la implementación.
Tema 10: Interfaces Antonio J. Sierra.
1 Herencia en Java Agustín J. González Diseño y Programación Orientados a Objetos.
UNIDAD 2 CLASES Y OBJETOS. CLASE Elementos cabecera y cuerpo de la clase. Cabecera: aporta información fundamental sobre la clase en sí y constituye de.
Capitulo # 4 herencia PROGRAMACION III UNIVERSIDAD
Diplomado Desarrollo de Aplicaciones en Internet
Programación Orientada a Objetos
Programación orientada a objetos
SCJP SUN CERTIFIED PROGRAMMER FOR JAVA 6. SEMANA DOS ORIENTACION A OBJETOS.
Informática II Interfaces zLas interfaces declaran un tipo que se componen sólo de métodos abstractos y constantes. zLa definición de una clase hace pensar.
SCJP SUN CERTIFIED PROGRAMMER FOR JAVA 6
Programación avanzada en Java Miguel Ángel Corella 23 de Septiembre de 2005.
FACULTAD DE ESTUDIOS SUPERIORES ARAGON
UNIDAD VI Recursos esenciales de Java LSC. Natalia Rodríguez Castellón.
SCJP SUN CERTIFIED PROGRAMMER FOR JAVA 6
Metodología de Programación Ayudantía 5 lelagos.ublog.cl 2009.
Interfaces ELO329: Diseño y Programación Orientados a Objetos.
1 Herencia en Java Agustín J. González Diseño y Programación Orientados a Objetos.
Herencia. Introducción La idea básica es poder crear clases basadas en clases ya existentes. Cuando heredamos de una clase existente, estamos re-usando.
Detalles Generales sobre Java
Programación orientada a objetos
:: Prof. Yeniffer Peña Programación I Programación Orientada a Objetos Presentación.
Herencia y Clases Abstractas
:: Prof. Yeniffer Peña Programación I Programación Orientada a Objetos Presentación.
CONCEPTOS.
HERENCIA.
Programación orientada a objetos Capítulo 9 Algo mas sobre herencias.
Tipo de relación entre clases Es uno de los aspectos que distinguen el paradigma de orientación a objetos frente a otros paradigmas. Mecanismo que,
Clases “ Es una Abstracción de un elemento del mundo real ”
Herencias Conceptos básicos i
Programación orientada a objetos La programación orientada a objetos o POO (OOP según sus siglas en inglés) es un paradigma de programación que usa objetos.
Programación Orientada a Objetos Unidad 5. Los objetos son entidades que combinan estado Contiene toda la información denominados atributos REPASO Cada.
:: Prof. Yeniffer Peña Programación I Programación Orientada a Objetos Presentación.
 En Java, como en otros lenguajes de programación orientados a objetos, las clases pueden derivar desde otras clases. La clase derivada (la clase que.
Reutilización de código Elementos básicos del lenguaje Java Definición de variables, expresiones y asignaciones Fundamentos de Programación Departamento.
Métodos en Java. Estructura de un programa en Java ► La relación con la vida misma la podemos ver en el siguiente comentario: Imaginemos que dos clases.
:: Prof. Yeniffer Peña Programación I Programación Orientada a Objetos Presentación.
RELACIONES ENTRE CLASES M.C. YOLANDA MOYAO MARTINEZ.
Programación en Java Introducción a Java. Reseña histórica Surge en 1991 por Sun Microsystems Desarrollado para electrodomésticos Se buscaba un código.
Concepto de Tipo y Subtipo Diseño e Implementación Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Unidad Didáctica 10 Versión.
Programación I Clases. Paradigma POO La programación Orientada a objetos (POO) es una forma programar, más cercana a como expresaríamos las cosas en la.
:: Prof. Yeniffer Peña Programación I Programación Orientada a Objetos Presentación.
Programación en Java Introducción a Java. Reseña histórica Surge en 1991 por Sun Microsystems Desarrollado para electrodomésticos Se buscaba un código.
Transcripción de la presentación:

FUNDAMENTALS OF THE JAVA PROGRAMMING LANGUAGE (SL-110) CAPÍTULO 12: HERENCIA Ing. Ronald Criollo

AGENDA Herencia y Programación orientada a objetos. Lenguaje JAVA soporta herencia Modificadores de Acceso y Herencia Sobreescritura Uso de THIS y SUPER Herencia y Constructores. Extendiendo las Clases.

HERENCIA Objetos son creados para modelar COSAS. Las COSAS podrían ser diferentes, pero tienen muchos atributos en común Podemos crear un objeto que modele los atributos en común

HERENCIA

ABSTRACCION Una SUPERCLASE puede ser usada para modelar los atributos comunes o comportamiento. A veces, la SUPERCLASE no puede ser un Objeto en si. La SUPERCLASE puede definir el comportamiento que las SUBCLASES deben implementar

SUPERCLASES Y SUBCLASES

MODELANDO SUPERCLASES Y SUBCLASES

MODELANDO SUPERCLASES Y SUBCLASES

PROBLEMA DE HERENCIA MULTIPLE Algunos lenguajes permiten que una clase pueda tener mutiples SUPERCLASES. Herencia provee la relacion “ES UN”. Multiple Herencia crea conflictos con los atributos y comportamientos

PALABRAS CLAVES EN LA HERENCIA extends: Declara que la actual clase es una SUBCLASE de otra. super: usada por la SUBCLASE para acceder a los atributos o metodos de la SUPERCLASE. protected: es un modificador de acceso que restringe el acceso a las SUBCLASES. abstract: declara que una clase es una INTERFACE implements: permite a una clase tomar las propiedades de una INTERFACE

ROL DE LOS MODIFICADORES DE ACCESO EN LA HERENCIA La subclase hereda todos los atributos y comportamientos de la SUPERCLASE excepto los declarados como privado.

ROL DE LOS MODIFICADORES DE ACCESO EN LA HERENCIA

SOBRESCRITURA DE METODOS SUBCLASE podria necesitar personalizar el comportamiento de las SUPERCLASES. La SUBCLASE define un metodo que ya existe en la SUPERCLASE. Cuando este metodo es llamado, es usado el que es definido en la SUBCLASE. El metodo de la SUPERCLASE es accesible desde la SUBCLASE usando la palabra clave SUPER .

SOBRESCRITURA DE METODOS

SOBRECARGA VS SOBREESCRITURA Sobreescritura es cuando un metodo en la SUBCLASE es diseñado para reemplazar un metodo del mismo nombre en la SUPERCLASE. Sobrecarga es tener varios metodos con el mismo nombre en la misma clase con distinta definición. Sobreescritura permite personalizar el comportamiento. Sobrecarga crea varias formas de hacer la misma cosa.

MANEJO DE CONSTRUCTORES EN LA HERENCIA Contructores pueden ser sobrecargados. Cuando una SUBCLASE es construida, el constructor de la SUPERCLASE tambien es llamado. El constructor de la SUBCLASE puede llamar explicitamente al constructor de la SUPERCLASE usando la palabra clave SUPER. Si no hay un constructor correspondiente en la SUPERCLASE, la compilación FALLA.

DECLARANDO UNA SUBCLASE Sintaxis [class_modifier] class class_identifier extends superclass_identifier Ejemplo

DECLARANDO UNA SUBCLASE

IMPORT Sintaxis Ejemplo import package_name.class_name;

USANDO NOMBRE COMPLETO Sintaxis package_name.class_name Ejemplo

POLIMORFISMO POLI = Multiple. MORFISMO = Formas. Implica que un mismo Objeto puede tomar diversas formas. Figura a = new Circulo(); Figura b = new Triangulo();

CLASES ABSTRACTAS Son SUPERCLASES que modelan de una forma mas generalizada los atributos y comportamientos. Las clases ABSTRACTAS definen metodos que no tienen cuerpo pero que deben ser sobreescritos. Las clases ABSTRACTAS no saben como es el comportamiento general de las SUBCLASES, por eso fuerzan a crear en las SUBCLASES un comportamiento con este nombre.

INTERFACES Java impide el uso de Herencia Multiple. Sin embargo, una clase puede heredar atributos (STATIC y FINAL) y comportamientos de multiples fuentes usando INTERFACES. Las INTERFACES son como una plantilla para el comportamiento pero no la definen, es por eso que fuerzan a que las SUBCLASES las definan

INTERFACES

CLASE, CLASE ABSTRACTA E INTERFAZ

CLASE, CLASE ABSTRACTA E INTERFAZ En una clase, al definir Animal tendríamos que implementar los métodos dibuja() e imprime(). Las clases hijas no tendrían por qué implementar los métodos, a no ser que quieran adaptarlos a sus propias necesidades. En una clase abstracta podríamos implementar los métodos que nos interese, dejando sin implementar los demás (dejándolos como métodos abstractos). Dichos métodos tendrían que implementarse en las clases hijas. En un interfaz no podemos implementar ningún método en la clase padre, y cada clase hija tiene que hacer sus propias implementaciones de los métodos. Además, las clases hija podrían implementar otros interfaces.

CLASES FINAL Una clase FINAL se declara como la clase que termina una cadena de herencia. No se puede heredar de una clase final. Por ejemplo, la clase Math es una clase final. Se usa la palabra clave FINAL para declarar un atributo INMUTABLE (CONSTANTE). Tambien se usa la palabra clave FINAL para impedir que un metodo sea sobreescrito en una SUBCLASE.