UAA-DSE Programación 2 / C++ Eduardo Serna-Pérez
|
|
|
- Silvia Castellanos Herrero
- hace 9 años
- Vistas:
Transcripción
1 6 Herencia y Polimorfismo La Herencia y el Polimorfismo son dos de los principales mecanismos de programación que caracterizan a la programación orientada a objetos. La herencia sustenta su mecanismo en la reutilización de código a partir de una clase ya existente, generando así nuevas clases que incluyan las características previas (clase base) y aportando otras nuevas características (clase derivada). Por otro lado el polimorfismo es, quizás, uno de los mecanismo más poderosos y complejos de la programación orientada a objetos, es un mecanismo que permite a una función dada tener muchas especificaciones diferentes, dependiendo del tipo para el cual esta es aplicada. Ambos mecanismos viene a completar el concepto del paradigma orientado a objetos. 6.1 Herencia En el mundo real los objetos son con frecuencia extensiones de otro objeto. Por ejemplo, nosotros siempre describimos cosas usando frases como: Y es similar a X, excepto que Y tiene... y Y hace... Cuando hacemos esto, estamos definiendo un nuevo objeto describiendo como las características y comportamientos del nuevo objeto difieren del anterior objeto. La herencia es, seguramente, la característica más potente de la POO, después de las clases. Por herencia conocemos el proceso de crear nuevas clases, llamadas clases derivadas, a partir de una clase base. En C++ la herencia se manifiesta con la creación de un tipo definido por el usuario (clase), que puede heredar las características de otra clase ya existente o derivar las suyas a otra nueva clase. Cuando se hereda, las clases derivadas reciben las características (estructuras de datos y funciones) de la clase original, a las que se pueden añadir nuevas características o modificar las características heredadas. El compilador hace realmente una copia de la clase base en la nueva clase derivada y permite al programador añadir o modificar miembros sin alterar el código de la clase base. La derivación de clases consigue la reutilización efectiva del código de la clase base para sus necesidades. Si se tiene una clase base totalmente depurada, la herencia ayuda a reutilizar ese código en una nueva clase. No es necesario comprender el código fuente de la clase original, sino sólo lo que hace. Tome en cuenta que las jerarquías de clases (herencia) se usan especialmente en la resolución de problemas complejos, es difícil que se recurra a ellas para resolver problemas sencillos. Supongamos que nuestra clase base para clasificar a las personas en función de su profesión sea "Persona". Preste especial atención a la palabra "clasificar", es el punto de partida para buscar la solución de cualquier problema que se pretenda resolver usando POO. Lo primero que debemos hacer es buscar categorías, propiedades comunes y distintas que nos permitan clasificar los objetos, y crear lo que después serán las clases de nuestro programa. Es muy importante dedicar el tiempo y atención necesarios a esta tarea, de ello dependerá la flexibilidad, reutilización y eficacia de nuestro programa. Independientemente de la profesión, todas las personas tienen propiedades comunes como, nombre, fecha de nacimiento, género, estado civil, etc. 1
2 La siguiente clasificación debe ser menos general, supongamos que dividimos a todas las personas en dos grandes clases: empleados y estudiantes. Lo importante es decidir qué propiedades que no hemos incluido en la clase "Persona" son exclusivas de los empleados y de los estudiantes. Por ejemplo, el sueldo por nómina es exclusivo de los empleados, la calificación de la materia, es exclusiva de los estudiantes. Una vez hecho eso crearemos dos clases derivadas de Persona: "Empleado" y "Estudiante". Haremos una nueva clasificación, ahora de los empleados. Podemos clasificar a los empleados en ejecutivos y obreros. De nuevo estableceremos propiedades exclusivas de cada clase y crearemos dos nuevas clases derivadas de "Empleado": "Ejecutivo" y "Obrero". P ersona E m pleado E studiante E jecutiv o O brero En C++ existen dos tipos de herencia: simple y múltiple. La herencia simple es aquella en la que cada clase derivada hereda de una única clase. En herencia simple, cada clase tiene un solo ascendiente. Cada clase puede tener, sin embargo, muchos descendientes. La herencia múltiple es aquella en la cual una clase derivada tiene más de una clase base. Aunque el concepto de herencia múltiple es muy útil, el diseño de clases suele ser más complejo Clases derivadas La herencia simple se realiza tomando una clase existente y derivando nuevas clases de ella. La clase derivada hereda las estructuras de datos y funciones de la clase original. Además, se pueden añadir nuevos miembros a las clases derivadas y los miembros heredados pueden ser modificados. Una clase utilizada para derivar nuevas clases se denomina clase base, clase padre, superclase o ascendiente. Una clase creada de otra clase se denomina clase derivada o subclase. Se pueden construir jerarquías de clases, en las que cada clase sirve como padre o raíz de una nueva clase Conceptos fundamentales de derivación C++ utiliza un sistema de herencia jerárquica. Es decir, se hereda una clase de otra, creando nuevas clases a partir de las clases ya existentes. Sólo se pueden heredar clases. Una clase derivada hereda todos los miembros dato excepto, miembros dato estáticos, de cada una de sus clases base. Una clase derivada hereda las funciones miembro de su clase base. Esto significa que se hereda la capacidad para llamar a funciones miembro de la clase base en los objetos de la clase derivada. Los siguientes elementos de la clase no se heredan: Constructores y Destructores 2
3 Funciones amigas Funciones y datos estáticos de la clase Operador de asignación sobrecargado Una clase derivada no puede acceder a los datos miembro private de su clase base; si se permitiera esto, se estaría violando el encapsulamiento de la clase base. Sin embargo una clase derivada puede acceder a los datos miembros public y protected 1 de su clase base. Las clases base diseñadas con el objetivo principal de ser heredadas por otras se denominan clases abstractas. Normalmente, no se crean instancias a partir de clases abstractas, aunque sea posible Declaración de clases derivadas Cada clase derivada se debe referir a una clase base declarada anteriormente. La declaración de una clase derivada tiene la siguiente sintaxis: class clase_derivada : <especificadores_de_acceso> clase_base {... }; Los especificadores de acceso a las clases base definen los posibles tipos de derivación: public, protected y private. El tipo de acceso a la clase base especifica cómo recibirá la clase derivada a los miembros de la clase base. Si no se especifica un acceso a la clase base, C++ supone que su tipo de herencia es privado. Derivación pública (public). Todos los miembros public y protected de la clase base son accesibles en la clase derivada, mientras que los miembros private de la clase base son siempre inaccesibles en la clase derivada. Derivación privada (private). Todos los miembros de la clase base se comportan como miembros privados de la clase derivada. Esto significa que los miembros public y protected de la clase base no son accesibles más que por las funciones miembro de la clase derivada. Los miembros privados de la clase siguen siendo inaccesibles desde la clase derivada. Derivación protegida (protected). Todos los miembros public y protected de la clase base se comportan como miembros protected de la clase derivada. Estos miembros no son, pues, accesibles al programa exterior, pero las clases que se deriven a continuación podrán acceder normalmente a estos miembros (datos o funciones) Constructores y destructores en Herencia Una clase derivada puede tener tanto constructores como destructores, aunque tiene el problema adicional de que la clase base puede tomar ambas funciones miembro especiales. Un constructor o destructor definido en la clase base debe estar coordinado con los encontrados en una clase derivada. Igualmente importante es el movimiento de valores de los miembros de la clase derivada a los miembros que se encuentran en la base. En particular, se debe considerar cómo el constructor de la clase base recibe valores de la clase derivada para crear el objeto completo. 1 Los datos de tipo protected pueden ser accesibles a cualquier clase derivada, pero no esta disponible fuera de la clase base y derivada. 3
4 Si un constructor se define tanto para la clase base como para la clase derivada, C++ llama primero al constructor base. Después que el constructor de la base termina sus tareas, C++ ejecuta el constructor derivado. Cuando una clase base define un constructor, éste se debe llamar durante la creación de cada instancia de una clase derivada, para garantizar la buena inicialización de los datos miembro que la clase derivada hereda de la clase base. En este caso la clase derivada debe definir a su vez un constructor que llama al constructor de la clase base proporcionándole los argumentos requeridos. Un constructor de una clase derivada debe utilizar un mecanismo de pasar aquellos argumentos requeridos por el correspondiente constructor de la clase base. derivada::derivada ( tipo1 x, tipo2 y ) : base ( x, y ) {... } Otro aspecto importante que es necesario considerar es el orden en el que el compilador C++ inicializa las clases base de una clase derivada. Cuando El compilador C++ inicializa una instancia de una clase derivada, tiene que inicializar todas las clases base primero. Por definición, un destructor de clases no toma parámetros. Al contrario que los constructores, una función destructor de una clase derivada se ejecuta antes que el destructor de la clase base Redefinición de funciones Se pueden utilizar funciones miembro en una clase derivada que tengan el mismo nombre que otra de una clase base. La redefinición de funciones se realiza mediante funciones miembro sobrecargadas en la clase derivada. Una función miembro redefinida oculta todas las funciones miembro heredadas del mismo nombre. Por tanto cuando en la clase base y en la clase derivada hay una función con el mismo nombre en las dos, se ejecuta la función de la clase derivada. 6.2 Polimorfismo El concepto de Polimorfismo es uno de los fundamentos para cualquier lenguaje orientado a Objetos, las mismas raíces de la palabra pueden ser una fuerte pista de su significado: Poli = Multiple, morfismo= Formas, esto implica que un mismo Objeto puede tomar diversas formas. En programación orientada a objetos se denomina polimorfismo a la propiedad que poseen algunas operaciones de tener un comportamiento diferente dependiendo del objeto sobre el que se aplican. El polimorfismo dinámico (dynamic-binding) puede consistir en que si se tiene una instancia de una subclase, se asigna esa instancia a una referencia de la clase padre y se llama a un método de la referencia se obtendrá el comportamiento de la subclase. El mecanismo concreto depende del lenguaje de programación, observe el siguiente fragmento de código: 4
5 Figura a = new Circulo(); Figura b = new Rectangulo(); Inicialmente se puede pensar que este código generaría un error debido a que el tipo de referencia es distinta a la instancia del objeto, sin embargo, el fragmento anterior es correcto y demuestra el concepto de Polimorfismo. A través del concepto de Herencia ("Inheritance") es posible ilustrar este comportamiento: Figura Circulo Rectángulo 5
PROGRAMACION ORIENTADA A OBJETOS EN C++
PROGRAMACION ORIENTADA A OBJETOS EN C++ 1- INTRODUCCIÓN El lenguaje C++ representa el resultado de los esfuerzos realizados para proporcionar las ventajas de la programación Orientada a Objetos a un lenguaje
Programación orientada a objetos. Resumen de Temas Unidad 5: Herencia
Programación orientada a objetos Resumen de Temas Unidad 5: Herencia 5.1 Introducción a la Herencia La herencia es el mecanismo fundamental de relación entre clases en la orientación a objetos. Relaciona
Tema: Herencia en C#.
POO. Guía No. 8 1 Tema: Herencia en C#. Facultad: Ingeniería Escuela: Computación Asignatura: Programación Orientada a Objetos Materiales y Equipo Computadora con Visual Studio /Visual C#. Guía Número
HERENCIA Y TIPOS. Articulo. Video Audio Altavoces. Amplificador
HERENCIA Y TIPOS. Las clases con propiedades y funciones comunes se agrupan en una superclase. Las clases que se derivan de una superclase son las subclases. Las clases se organizan como jerarquía de clases.
Herencia. Implementación en Java
Herencia Implementación en Java Herencia Concepto de Herencia Es el mecanismo que permite definir nuevas clases partiendo de otras ya existentes. Las clases que derivan de otras heredan automáticamente
Tema: Herencia en C#.
Programación II. Guía No. 8 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Herencia en C#. Objetivos Crear clases a través de la herencia de clases existentes. Describir
Guía práctica de estudio 07: Herencia
Guía práctica de estudio 07: Herencia Elaborado por: M.C. M. Angélica Nakayama C. Ing. Jorge A. Solano Gálvez Autorizado por: M.C. Alejandro Velázquez Mena Guía práctica de estudio 07: Herencia Objetivo:
Unidad IV. Este tipo de codificación nos es permitido gracias a la sobrecarga, la cual se aplica a métodos y constructores.
Unidad IV Métodos. 4.1 Definición de un método. El polimorfismo, en programación orientada a objetos, se refiere a la posibilidad de acceder a un variado rango de funciones distintas a través del mismo
Academia de computación de IE, ICA e ISISA. Unidad didáctica Programación Orientada a Objetos
Academia de computación de IE, ICA e ISISA Unidad didáctica Programación Orientada a Objetos Elaboración y diseño de cien reactivos de opción múltiple para la unidad didáctica programación orientada a
3. LA HERENCIA. Necesidad de la herencia
página 1 3. LA HERENCIA Necesidad de la herencia La mente humana clasifica los conceptos de acuerdo a dos dimensiones: pertenencia y variedad. Se puede decir que el Ford Fiesta es un tipo de coche (variedad
Unidad Didáctica 5: Introducción a la Programación Orientada a Objetos
Unidad Didáctica 5: Introducción a la Programación Orientada a Objetos o Clases o Estructuras con funciones miembros. o Definición de una clase. o Constructores. o Tipos de constructores. o Sobrecarga
Edwin Andrés Cubillos Vega
PROGRAMACION ORIENTADA A OBJETOS Edwin Andrés Cubillos Vega Company LOGO Contenido Introducción Clases y Objetos Herencia Constructores y Destructores Polimorfismo Contenido Introducción Clases y Objetos
Clases y herencia. FJP Unidad 8. Diseño de clases
Clases y herencia FJP Unidad 8 Encapsulamiento Diseño de clases El encapsulamiento provee protección de atributos y métodos definidos en una clase de forma tal que comportamiento de objetos de una clase
Programación Orientada a Objetos
Programación Orientada a Objetos PROGRAMACIÓN ORIENTADA A OBJETOS 1 Sesión No. 4 Nombre: Herencia Contextualización Cuando hablamos de informática podemos contemplar varios elementos que se utilizan dentro
Introducción a OOP. Programación Orientada a Objeto
Introducción a OOP Programación Orientada a Objeto Evolución Programación no Estructurada, Programación procedimental, Programación modular y Programación orientada a objetos. Programación no Estructurada
Curso de Java POO: Programación orientada a objetos
Curso de Java POO: Programación orientada a objetos Luis Guerra Velasco Curso INEM. Programación en Java Diciembre 2010 Índice 1 Introducción 2 Comportamiento y estado 3 POO en Java 4 Relaciones 5 Herencia
Tema 3. Herencia. Programación Avanzada. Jorge Badenas
Tema 3. Herencia Programación Avanzada Jorge Badenas 1. Herencia Herencia: relación entre dos clases, donde una clase nueva se define como una extensión de la otra. En la nueva clase sólo necesitamos escribir
Clases y Objetos en C++
Informática II Clases y Objetos en C++ Introducción Las variables de los tipos fundamentales de datos no son suficientes para modelar adecuadamente objetos del mundo real. alto, ancho y longitud para representar
Programación orientada a Objetos (POO) La POO está compuesta por una serie de elementos que se detallan a continuación.
Clase 3: 22/08/2016 Programación orientada a Objetos (POO) La POO está compuesta por una serie de elementos que se detallan a continuación. Clase Una clase es un modelo que se utiliza para crear objetos
Francisco Javier Peña Escobar Universidad del Valle
Francisco Javier Peña Escobar Universidad del Valle [email protected] Universidad del Valle - 2009 Relaciones entre clases Relaciones entre clases. Herencia. Constructores y destructores. Lista
Herencia y polimorfismo
Herencia y polimorfismo Programación Orientada a Objeto Ing. Civil en Telecomunicaciones Herencia Hemos visto cómo crear nuestras propias clases Clase InfoAlumno para calcular las notas Supongamos ahora
POO: Clases y objetos
POO: Clases y objetos Programación de aplicaciones 1 Introducción En los lenguajes de programación orientados a objetos, tenemos la posibilidad de extender el lenguaje mediante la creación de nuevo tipos,
IMPLEMENTACIÓN DE CONCEPTOS P.O.O. EN JAVA
IMPLEMENTACIÓN DE CONCEPTOS P.O.O. EN JAVA Implementación de conceptos P.O.O. en Java Temario 2. Conceptos de Programación Orientada a Objetos 1. Conceptos de P.O.O. 2. Implementación de conceptos P.O.O
Programación orientada a objetos I
Introducción Programación orientada a objetos I Curso INEM. Programación en C++ Santiago Muelas Pascual [email protected] Qué es la POO? Un paradigma de programación Un paradigma es una forma de afrontar
Tema: Funciones Virtuales y Polimorfismo.
Programación II. Guía No. 10 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Funciones Virtuales y Polimorfismo. Objetivos Comprender que es ligadura e identificar sus tipos.
Tema: Funciones Virtuales y Polimorfismo.
Programación II. Guía 10 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Funciones Virtuales y Polimorfismo. Objetivos Específicos Comprender que es ligadura e identificar
Tema: Funciones Virtuales y Polimorfismo.
POO104. Guía No. 10 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación Orientada a Objetos Tema: Funciones Virtuales y Polimorfismo. Materiales y Equipo Computadora con el software C
Clase 3: Repaso POO. DSIW1:Ing. Tomás Eduardo Urbina 1
DSIW1:Ing. Tomás Eduardo Urbina 1 Declaración de una clase y creación de un objeto. La programación orientada a objetos se basa en la programación de clases; a diferencia de la programación estructurada,
Curso de PHP. Pascual Gómez del Pino Página 1
Curso de PHP. Pascual Gómez del Pino Página 1 CLASES Y OBJETOS. PHP no es un lenguaje orientado a objetos, por lo menos en su totalidad. Pero PHP tiene la capacidad de definir clases y objetos. PROGRAMACIÓN
Guía práctica de estudio 08: Polimorfismo
Guía práctica de estudio 08: Polimorfismo Elaborado por: M.C. M. Angélica Nakayama C. Ing. Jorge A. Solano Gálvez Autorizado por: M.C. Alejandro Velázquez Mena Guía práctica de estudio 08: Polimorfismo
Apuntes de Programación y estructuras de datos. Control de datos
Apuntes de Programación y estructuras de datos. Control de datos Nikos Mylonakis, Fernando Orejas y Ana Cristina Zoltan [email protected] Dept. Llenguatges i Sistemes Informátics Universitat Politécnica
Programación Orientada a Objetos Clases, métodos, atributos. Concepto de herencia, clases derivadas, tipos de herencia.
C3 Programación Orientada a Objetos Clases, métodos, atributos. Concepto de herencia, clases derivadas, tipos de herencia. Encapsulamiento y propiedades. Temas Clases y Objetos Herencia Clases derivadas
acceso Implementación de conceptos P.O.O. en Java Orientada a Objetos 2. Modificadores de en Java Temario
Implementación de conceptos P.O.O. en Java Temario 2. Conceptos de Programación Orientada a Objetos 1. Conceptos de P.O.O. 2. Implementación de conceptos P.O.O en Java 1. Creación de clases y objetos 2.
Programación orientada a objetos. Capítulo 8 Mejora de las estructuras mediante herencia
Programación orientada a objetos Capítulo 8 Mejora de las estructuras mediante herencia Clases y objetos de DoME Modelo de objetos Modelo de clases Crítica de la v1 de DoME - Duplicación de código - Las
TEMA 5. Agenda. Herencia
TEMA 5 Herencia V1.3 Manuel Pereira González Agenda Implementación Métodos Heredados vs Sobreescritos La Clase Object Resumen 1 Introducción Herencia Una clase (subclase ó clase hija) hereda la estructura
La Herencia. La primera línea de cada declaración debe incluir la sintaxis siguiente:
La Herencia Es la capacidad de compartir atributos y métodos entre clases. Es la propiedad que permite definir nuevas clases usando como base clases ya existentes. La nueva clase (clase derivada) hereda
Programación Orientada a Objetos (POO)
Programación Orientada a Objetos (POO) Introducción La programación orientada a objetos es una técnica de programación en la cual expresamos el código en términos relacionados a como vemos las cosas en
Programación Orientada a Objetos en C++
Unidad I Programación Orientada a Objetos en C++ Programación Orientada a Objetos en C++ Programación I - 0416202 Contenido Esta lección abarca los siguientes temas: Estructura y declaración de una clase
La Herencia: Teoría (1)
Introducción a la Herencia Presentación basada en: 1. Construcción de Software Orientado a Objetos. Bertrand Meyer.1998. 2. Java 2., Curso de programación. Fco. Javier Ceballos. Ed. Alfoomega&RA-MA, 2003.
Tema 3 Herencia en Java Parte 1. Programación Orientada a Objetos Curso 2015/2016
Tema 3 Herencia en Java Parte 1 Programación Orientada a Objetos Contenido Introducción. Definición y tipos. Constructores. Redefinición. Polimorfismo. Herencia y sistema de tipos. Ligadura dinámica. Casting
Herencia y Polimorfismo en C++
Herencia y Polimorfismo en C++ Informática II Fundamentos de Programación 1 Herencia Concepto de "herencia" herencia": Una clase -clase derivada- puede definirse a partir de otra clase ya existente (clase
CONTENIDOS. La herencia permite: - Adoptar automáticamente características ya implementadas. Ahorro de tiempo y esfuerzo
CONTENIDOS 1. Introducción 2. Cuándo se aplica el mecanismo de herencia 3. Un ejemplo de herencia 4. Terminología 5. Clase derivada. Creación de una clase derivada 6. Miembros que no se heredan automáticamente
POO. Por tanto, una clase nos permite crear varios objetos que pueden realizar la misma función o funciones diferentes.
CURSO DE PHP. POO. Antes de entrar en detalle sobre los conceptos establecidos en la programación orientada, tendremos que establecer conceptos básicos para el estudiante conozca la terminología de la
Unidad V. Ya veremos qué poner en "algunas_palabras" y "algo_más", por ahora sigamos un poco más.
Implementación Orientada a Objetos. Unidad V 5.1 Estructura de una clase. Una clase consiste en: algunas_palabras class nombre_de_la_clase [algo_más] { [lista_de_atributos] [lista_de_métodos] Lo que está
POO: Herencia. Programación de aplicaciones. Jesus Barron Vidales 7/05/10
POO: Herencia Programación de aplicaciones 1 Herencia La herencia es una de las características fundamentales de la POO, es la capacidad de crear nuevas clases a partir de otras ya existentes. Además de
16. Herencia Definición de herencia. 168 A. García-Beltrán y J.M. Arranz
168 A. García-Beltrán y J.M. Arranz 16. Herencia Objetivos: a) Definir el concepto de herencia entre clases b) Interpretar el código fuente de una aplicación Java donde aparecen clases relacionadas mediante
Guía práctica de estudio 04: Tipos de clase
Guía práctica de estudio 04: Tipos de clase Elaborado por: M.C. M. Angélica Nakayama C. Ing. Jorge A. Solano Gálvez Autorizado por: M.C. Alejandro Velázquez Mena Guía práctica de estudio 04: Tipos de clases
Herencia en Java. Agustín J. González Diseño y Programación Orientados a Objetos
Herencia en Java Agustín J. González Diseño y Programación Orientados a Objetos 1 Introducción La idea básica es poder crear clases basadas en clases ya existentes. Cuando heredamos de una clase existente,
Tema 3b: Estructura General de un programa en Java
Tema 3b: Estructura General de un programa en Java 0 Modificadores de acceso Son keywords en Java que dan información al compilador sobre el ámbito en el que una clase, un método y/o una variable pueden
Programación Orientada a Objetos
Programación Orientada a Objetos E.T.S.I. Informática Universidad de Málaga http://www.lcc.uma.es/ Contenido Introducción histórica Conceptos básicos de la Programación O. O. Conceptos avanzados de la
Contenido. Prefacio Orígenes de la programación orientada a objetos... 1
Prefacio... xv 1. Orígenes de la programación orientada a objetos... 1 1.1 La crisis del software... 1 1.2 Evolución del software... 3 1.3 Introducción a la programación orientada a procedimientos... 4
Programación Orientada a Objetos. Resumen de Temas Unidad 3: Constructores y destructores
Programación Orientada a Objetos Resumen de Temas Unidad 3: Constructores y destructores 3.1 Conceptos de métodos constructor y destructor Java inicializa siempre con valores por defecto las variables
Aplicaciones de Escritorio
Aplicaciones de Escritorio Introducción n a la Programación Orientada a Objetos con Java Disertantes: Ing. Rasjido, Jose. AdeS Montenegro, Cristian. Agenda Clases y Paquetes. Clases y Paquetes. Modificadores
4. POLIMORFISMO. Figura 6: Funciones virtuales
página 1 4. POLIMORFISMO Polimorfismo, por definición, es la capacidad de adoptar formas distintas. En el ámbito de la Programación Orientada a Objetos se entiende por polimorfismo la capacidad de llamar
Curso de Java POO: Programación orientada a objetos
Curso de Java POO: Programación orientada a objetos Luis Guerra [email protected] Curso INEM. Programación en Java Marzo 2011 Índice Previo Repaso y encapsulación Empaquetado Relaciones entre clases Herencia
Programación Orientada a Objetos. Conceptos Básicos
Programación Orientada a Objetos Conceptos Básicos Programación Orientada a Objetos Paradigma de programación Un programa orientado a objetos está organizado como un conjunto de agentes en interacción
PNFSI. Asignatura: Desarrollo de Software. Tema 1: Programación Orientada a Objetos
PNFSI Asignatura: Desarrollo de Software Tema 1: Programación Orientada a Objetos Ing. Zamantha González Abril, 2008 Contenido Conceptos básicos Clase Objeto o instancia Atributos Métodos Constructores
Fundamentos de Programación
Fundamentos de Programación Extensión de clases: herencia y polimorfismo 13.12.2010 José A. Mañas Dpto. de Ingeniería de Sistemas Telemá@cos hcp://www.lab.dit.upm.es/~fprg/ extensión
POO PROGRAMACIÓN ORIENTADA A OBJETOS
POO PROGRAMACIÓN ORIENTADA A OBJETOS 1 Programación estructurada, consiste en descomponer el problema objeto de resolución en subproblemas y más subproblemas hasta llegar a acciones muy simples y fáciles
INTRODUCCIÓN AL PARADIGMA DE LA PROGRAMACIÓN ORIENTADA A OBJETOS CON JAVA
Objetivo: Identificar los concentos principales en java POO, que es una clase, un objeto así como sus características principales abstracción, modularidad, encapsulamiento, herencia, polimorfismo. INTRODUCCIÓN
class identificador{ //Bloque de propiedades (datos miembro, atributos, propiedades) //Bloque de métodos (comportamientos) }
Programación Basada en Objetos Lectura 2 Clases en Java Definición class identificador{ //Bloque de propiedades (datos miembro, atributos, propiedades) //Bloque de métodos (comportamientos) class Tiempo{
PROGRAMACIÓN EN C#.NET Programación Orientada a Objetos en C# Ing. Bruno López Takeyas
PROGRAMACIÓN EN C#.NET Programación Orientada a Objetos en C# Ing. Bruno López Takeyas Instituto Tecnológico de Nuevo Laredo 1 Qué es UML? UML = Unified Modeling Language Un lenguaje de propósito general
Necesidad de la herencia pertenencia variedad is a has a herencia variedad definir una clase modificando una o más clases añadir nuevos miembros
Necesidad de la herencia La mente humana clasifica los conceptos de acuerdo a dos dimensiones: pertenencia y variedad. Se puede decir que el Ford Fiesta es un tipo de coche (variedad o, en inglés, una
Curso de Java orientado a Android Parte 2
Curso de Java orientado a Android Parte 2 Introducción Java es un lenguaje de programación orientado a objetos (OOP). En este post cubriremos las características y principios básicos de la programación
Programación Orientada a Objetos con Java
Programación Orientada a Objetos con Java M.C. Jorge Eduardo Ibarra Esquer [email protected] Diseño orientado a objetos El diseño orientado a objetos surge de la idea de traspasar a los sistemas de software,
Java Avanzado Facultad de Ingeniería. Escuela de computación.
2 Java Avanzado Facultad de Ingeniería. Escuela de computación. Java Avanzado. Guía 5 3 Introducción Este manual ha sido elaborado para orientar al estudiante de Java Avanzado en el desarrollo de sus prácticas
! Fundamentos de la POO. ! Comportamiento y estado. ! Clases y objetos en Java
Introducción a la programación orientada a objetos Curso de Programación en Java! Fundamentos de la POO! Comportamiento y estado! Clases y objetos en Java Contenidos Luis Guerra [email protected] Enero 2012
Herencia y Clases Abstractas
Herencia y Clases Abstractas Reutilización de código y código genérico ELO329: Diseño y Programación Orientados a Objetos Introducción La idea básica es poder crear clases basadas en clases ya existentes.
Tema 1. Herencia y Polimorfismo
ÍNDICE EDA. Unidad didáctica I: Conceptos de Java para Estructuras de Datos Tema 1. Herencia y Polimorfismo 1. Relaciones entre clases: Reutilización del software. 2. La Herencia como soporte Java del
PROGRAMACIÓN ORIETADA A OBJETOS
PROGRAMACIÓN ORIETADA A OBJETOS Categorías de PL Categorías Procedimental Declarativa Imperativa Estructurada Orientada a Objetos Funcional Lógica Programación Orientada a Objetos DATOS DATOS Métodos Métodos
NETBEANS JAVA PROGRAMACIÓN ORIENTADA A OBJETOS
NETBEANS JAVA PROGRAMACIÓN ORIENTADA A OBJETOS Como se vio en teoría, la definición de una clase consta de dos partes fundamentales: 1 - La declaración de la clase: Indica el nombre de la clase precedido
CLASE 9 -HERENCIA Y POLIMORFISMO
CLASE 9 -HERENCIA Y POLIMORFISMO INTRODUCCIÓN Diferentes tipos de objetos con características y comportamiento comunes. lado1 lado2 lado3 color de línea color de relleno punto Triángulo Círculo radio color
Conceptos Básicos. Programación Orientada a Objetos 2
Programación Orientada a Objetos Conceptos Básicos de Objetos Ing. Julio Ernesto Carreño Vargas MsC. Conceptos Básicos Las aproximaciones ADOO y POO, proveen a los objetos como el principal medio para
Programación. Orientada a Objetos. Prof. Angela Di Serio. Universidad Simón Bolívar Especialización en Telemática
Programación Orientada a Objetos Prof. Angela Di Serio Universidad Simón Bolívar Especialización en Telemática Agenda Clase 2 Qué es Orientado a Objetos? Conceptos: objeto, clase, instancias, mensajes
OOP y C++ Indice. 0.1 Análisis orientado a objetos(1/4) Análisis orientado a objetos(2/4) 0.- OOP 1.- INTRODUCCIÓN.
OOP y C++ Un lenguaje para Programadores Carlos PLATERO Indice 0.- OOP 1.-. Objetivos, palabras clave, reglas prácticas, consejos 2.- CLASES Y OBJETOS. Extensión del concepto de estructura en C 3.- HERENCIA.
3.4 Clases y Objetos 05/04/2004. Conceptos Generales. Modificadores de la Clase. Estructura de una Clase. Variables Miembros
Conceptos Generales 3.4 Clases y Objetos Clases, miembros, constructores, control de acceso Las clases contienen los métodos que definen la computación Los campos (fields) o variables miembros definen
Introducción a Java. Introducción a Java. Programación I
Introducción a Java Introducción a Java Programación I Como Funciona Tipos de Datos TIPO TAMAÑO RANGO byte 8 bits Valores numéricos de 128 a 127 short 16 bits Valores numéricos de 32.768 a 32.767 int 32
12. Tipos de atributos
Programación orientada a objetos con Java 135 12. Tipos de atributos Objetivos: a) Profundizar en el concepto de atributo de una clase e indicar los tipos de atributos en Java b) Interpretar el código
