Este documento describe la herencia y el polimorfismo en Java. Explica que la herencia permite que una clase herede los atributos y métodos de otra clase base. El polimorfismo permite que los objetos respondan de manera diferente al mismo mensaje dependiendo de sus parámetros. Se provee un ejemplo de cómo una clase Punto3D hereda de la clase Punto.
0 calificaciones0% encontró este documento útil (0 votos)
324 vistas10 páginas
Este documento describe la herencia y el polimorfismo en Java. Explica que la herencia permite que una clase herede los atributos y métodos de otra clase base. El polimorfismo permite que los objetos respondan de manera diferente al mismo mensaje dependiendo de sus parámetros. Se provee un ejemplo de cómo una clase Punto3D hereda de la clase Punto.
Este documento describe la herencia y el polimorfismo en Java. Explica que la herencia permite que una clase herede los atributos y métodos de otra clase base. El polimorfismo permite que los objetos respondan de manera diferente al mismo mensaje dependiendo de sus parámetros. Se provee un ejemplo de cómo una clase Punto3D hereda de la clase Punto.
Este documento describe la herencia y el polimorfismo en Java. Explica que la herencia permite que una clase herede los atributos y métodos de otra clase base. El polimorfismo permite que los objetos respondan de manera diferente al mismo mensaje dependiendo de sus parámetros. Se provee un ejemplo de cómo una clase Punto3D hereda de la clase Punto.
Descargue como PDF, TXT o lea en línea desde Scribd
Descargar como pdf o txt
Está en la página 1de 10
DIRECCIN GENERAL DE EDUCACIN SUPERIOR TECNOLGICA
INSTITUTO TECNOLGICO DE SALINA CRUZ
ALUMNO: ALVARO DE JESS RAMOS GARCA CATEDRATICO: M.C. SUSANA MONICA ROMAN NAJERA TEMA: Herencia y polimorfismo SEMESTRE: 2 GRUPO: E2
CARRERA: ING. EN TECNOLOGIAS DE LA INFORMACIN Y DE LAS COMUNICACIONES.
SALINA CRUZ OAXACA A JUNIO 2014 INTRODUCION La herencia es uno de los mecanismos de los lenguajes de programacin orientada a objetos basados en clases, por medio del cual una clase se deriva de otra de manera que extiende su funcionalidad. El lenguaje Java permite el empleo de la herencia, caracterstica que permite definir una clase tomando como base a otra clase ya existente. Esto es una de las bases de la reutilizacin de cdigo, en lugar de copiar y pegar. La herencia se considera como un concepto fundamental en la programacin orientada a objetos ya que esta puede hacer relaciones con otras clases de manera jerrquica. A continuacin observara el funcionamiento de una clase y una subclase la forma en que se accede y el funcionamiento del polimorfismo.
HERENCIA Y POLIMORFISMO Herencia La herencia es, despus de la agregacin o composicin, el mecanismo ms utilizado para alcanzar algunos de los objetivos ms preciados en el desarrollo de software como lo son la reutilizacin y la extensibilidad. A travs de ella los diseadores pueden crear nuevas clases partiendo de una clase o de una jerarqua de clases preexistente (ya comprobadas y verificadas) evitando con ello el rediseo, la modificacin y verificacin de la parte ya implementada. La herencia facilita la creacin de objetos a partir de otros ya existentes e implica que una subclase obtiene todo el comportamiento (mtodos) y eventualmente los atributos (variables) de su superclase. Es la relacin entre una clase general y otra clase ms especfica. Por ejemplo: Si declaramos una clase prrafo derivada de una clase texto, todos los mtodos y variables asociadas con la clase texto, son automticamente heredados por la subclase prrafo. La herencia es un mecanismo que permite la definicin de una clase a partir de la definicin de otra ya existente. La herencia permite compartir automticamente mtodos y datos entre clases, subclases y objetos.
La herencia est fuertemente ligada a la reutilizacin del cdigo en la OOP. Esto es, el cdigo de cualquiera de las clases puede ser utilizado sin ms que crear una clase derivada de ella, o bien una subclase.
Hay dos tipos de herencia: Herencia Simple y Herencia Mltiple. La primera indica que se pueden definir nuevas clases solamente a partir de una clase inicial mientras que la segunda indica que se pueden definir nuevas clases a partir de dos o ms clases iniciales. Java slo permite herencia simple.
La herencia nos permite desviar una nueva clase a partir de una existente, las clases existentes es conocida como clase madre, o superclase o clase base, la clase derivada tambin es conocida como clase hija o subclase. La herencia permite a los programadores crear una jerarqua entre un grupo de clases que tienen caractersticas similares, la herencia es una forma de realizar de cdigo. Como su nombre lo implica la clase hija hereda caractersticas de la clase madre, la clase hija hereda los mtodos y datos definidos para la clase madre. Para ajustar una clase derivada el programador puede agregar nuevos datos y/o mtodos, o puede modificar los heredados La herencia son propiedades esenciales de la POO que consiste en la creacin de nuevas clases a partir de otras ya existentes, cuando una clase hereda de otra, contendr los mtodos y atributos de la clase padre; La herencia permite:
La realizacin del cdigo Aadir nuevos comportamientos a las clases hijas La redefinicin de comportamientos Creacin de clasificaciones jerrquicas de clases. Los aspectos generales como: class claseHija extends clasePadre{} Representa una relacin es un extends especifica que la clase hija hereda datos y mtodos de clases padre, aunque hereda todo, la clase hija solo tiene acceso a los miembros de la clase padre con modificadores public, protected, o package(ovacio), las situaciones excepcionales, puede interesar definir una variable en ala subclase con el mismo nombre que la superclase (se tendra hueco diferentes de memoria) La herencia es una de las tres caractersticas ms importantes en la POO porque permiten que una clase herede los atributos y mtodos de otra clase (Los constructores no se heredan, estos son prropios de la clase a la que pertenecen). Esta caracteristica permite la reutilizacin del cdigo.
Con la herencia todas las clases estn clasificadas en una jerrqua estricta. Cada clase tiene una superclase (la clase superior en la jerarqua) tambin llamada clase base y cada clase puede tener una o ms subclases tambin llamadas clases derivadas. Adems hereda todas las variables y los mtodos definidos por la superclase y agrega us elementos nicos.
Ejemplo de herencia: Class Punto{ Int x; Int y; Punto(int x, int y){ This.x=x; This.y=y; } Punto(){ this(0,0);} } Class Punto3D extends Punto{ Int z; Punto3D(int x, int y, int z){ int x; int y; int z; } Punto3D(){this(0,0);} }
POLIMORFISMO Se denomina polimorfismo a la capacidad que tiene los objetos de una clase de responder al mismo mensaje o evento en funcin de los parmetros utilizados durante su invocacin. Un objeto polimrfico es una entidad que puede contener valores de diferentes tipos durante la ejecucin del programa. El polimorfismo consiste en conseguir un objeto de una clase se comporte como un objeto de cualquier de sus subclases, una forma de conseguir objetos polimrficos es mediante el uso de puntero ala superclase. De esa forma podemos tener dentro de una misma estructura (arrays, listas, pilas, colas) objetos de distancias subclase, haciendo que el tipo de base de dichas estructuras sea un puntero a la superclase. Ejemplo en java es: Superclase sup=new (Superclase); El polimorfismo consiste en obtener un mismo mtodo con diferentes funciones, es decir, suponiendo que tengamos una clase Saludo con el mtodo Saludo el cual sera su constructor, pero en este caso tendramos varios constructores pero siempre siguiendo las reglas de independencia en cuestin a los parmetros de cada constructor para que as puedan diferenciarse uno de otro, sin embargo cada uno tendr diferentes procesos internos en s mismo. Polimorfismo es la capacidad de un objeto de adquirir varias formas. El uso ms comn de polimorfismo en programacin orientada a objetos se da cuando se utiliza la referencia de una clase padre, para referirse al objeto de la clase hijo. Cualquier objeto java que pueda pasar ms de un test "ES-UN" es considerado polimrfico. En Java, todos los objetos son polimrficos ya que cualquier objeto pasara un test "ES- UN" dado que son de su propio tipo, adems del de la clase Object. Es importante saber que la nica manera de acceder a un objeto es a travs de una variable de referencia. La variable de referencia slo puede ser de un tipo. Una vez declarado el tipo de la variable de referencia, no se puede cambiar. La variable de referencia puede ser reasignada a otros objetos, siempre y cuando no haya sido declarada "final". El tipo de la variable de referencia, determina los mtodos que podrn ser llamados sobre el objeto. Una variable de referencia puede hacer referencia a cualquier objeto o cualquier subtipo de su propio tipo.
El polimorfismo se refiere a la propiedad por la que es posible enviar mensajes sintcticamente iguales a objetos de tipos distintos. El nico requisito que deben cumplir los objetos que se utilizan de manera polimrfica es saber responder al mensaje que se les enva. Se puede clasificar el polimorfismo en dos grandes clases: Polimorfismo dinmico (o polimorfismo paramtrico) es aqul en el que el cdigo no incluye ningn tipo de especificacin sobre el tipo de datos sobre el que se trabaja. As, puede ser utilizado a todo tipo de datos compatible. Polimorfismo esttico (o polimorfismo ad hoc) es aqul en el que los tipos a los que se aplica el polimorfismo deben ser explcitos y declarados uno por uno antes de poder ser utilizados. El polimorfismo dinmico unido a la herencia es lo que en ocasiones se conoce como programacin genrica. Tambin se clasifica en herencia por redefinicin de mtodos abstractos y por mtodo sobrecargado. El segundo hace referencia al mismo mtodo con diferentes parmetros. Ejemplo de polimorfismo:
CONCLUCION
En java, como ya vimos la herencia se especifica agregando la clusula extends despus del nombre de la clase. En la clusula extends se indicara el nombre de la clase base de la cul queremos heredar. En este lenguaje al heredar de una clase padre, heredaremos los mtodos como los atributos, mientras que los constructores son utilizados, pero estos no son heredados.