Sunteți pe pagina 1din 18

UNIVERSIDAD DON BOSCO

FACULTAD DE ESTUDIOS TECNOLGICOS


ESCUELA DE COMPUTACION
GUIA DE LABORATORIO #07
CICLO:
02/ 2014

Nombre de la Practica:

Programacin Orientada a Objetos, Implementacin de


Herencia

Lugar de Ejecucin:

Centro de Computo

Tiempo Estimado:

2 horas y 30 minutos

Materia:

Lenguajes de Programacin 1
I. OBJETIVOS

Que el estudiante sea capaz de:

Evaluar cuando utilizar la Herencia de Objetos dentro de los requerimientos de un Programa


Implementar la Herencia gracias a la creacin de Clases Principales y Clases Derivadas
Implementar correctamente el principio del Polimorfismo
Ejemplificar la elaboracin de las clases y su implementacin en objetos
II. INTRODUCCION TEORICA

HERENCIA Y POLIMORFISMO
El manejo de propiedades, mtodos y eventos es slo el principio de la programacin orientada a
objetos; las caractersticas principales de la POO descansan en la capacidad de los objetos para trabajar
en colaboracin con otros objetos, y de aprovechar total o parcialmente su funcionalidad mediante la
reutilizacin de cdigo segn lo requieran las aplicaciones.
A continuacin se estudiar los principios que permiten el mximo aprovechamiento del cdigo a
travs de POO y con sus dos capacidades caractersticas: herencia y polimorfismo.
Herencia
La herencia (inheritance) es un concepto fundamental de la programacin orientada a objetos, y
consiste en la capacidad de definir clases que sirven como base de otras clases, evitando la
redundancia en la definicin de elementos como mtodos, eventos y propiedades. Hay una clase
base y una o varias clases derivadas; las clases derivadas aprovechan todo lo declarado en la clase base,
asumindolo como suyo y utilizando capacidades que no estn codificadas en ellas.
Las clases derivadas pueden heredar, e incluso extender, las propiedades, los mtodos y los eventos de
la clase base. Es posible tambin que las clases derivadas sustituyan o modifiquen (override) la
funcionalidad de los mtodos de la clase base.
1

Gua # 7: POO: Implementacin de Herencia

En Visual Basic, por omisin, todas las clases pueden heredarse.


Las ventajas de la herencia son muchas, pero la principal es que el desarrollador tendr que escribir y
depurar el cdigo slo una vez, para una clase, y disponer en muchas clases de la misma funcionalidad,
estableciendo las referencias adecuadas.
Cundo se debe utilizar la herencia?
La herencia entre clases no debe utilizarse por el simple hecho de que el lenguaje lo permite. La
herencia debe planearse; el desarrollador debe pensar cmo han de ser las clases, organizndolas en lo
que se conoce como Jerarqua de clases.
Se recomienda una jerarqua de clases cuando entre las clases se presenta una relacin de tipo Es-un
(is - a); debe evitarse el uso de herencia cuando se trata de relaciones Tiene-un (has - a).
Por ejemplo, una clase que contiene las caractersticas de los automviles en general (Automviles)
tiene mucho que compartirle a una clase que almacena las particularidades de los automviles
deportivos (AutomvilesDeportivos), pues un automvil deportivo, antes que ser de tipo deportivo, es
un automvil (is-a). Ahora pregntese, qu comparte un dueo de un automvil y un automvil?
Automviles y DueosAutomviles, no comparten rasgos. Las personas que poseen automviles no se
derivan de los automviles, ni viceversa. Que una persona tenga un (has-a) automvil, no quiere decir
que comparta con ste sus mtodos, propiedades y eventos. Imagnese tener que determinar el tipo de
transmisin, nmero de puertas y nmero de serie que una persona posee. Simplemente, de una cosa
no puede derivar la otra.
Se recomienda una jerarqua de clases, obviamente, slo si el cdigo de una clase brinda alguna
funcionalidad que se pueda reutilizar; tratar de heredar aspectos muy particulares que slo son
pertinentes para una clase no tiene sentido.
Inherits (Heredar)
El estatuto Inherits se utiliza para especificar que una clase de nueva creacin tiene como base una clase
ya existente. La clase nueva es la clase derivada (derived class); la clase ya existente es la clase base
(base class).
La sintaxis es la siguiente:
Class NombreClaseDerivada
Inherits NombreClaseBase

End Class
En este caso, la clase derivada dispone de todos los elementos declarados en la clase base.

Lenguajes de Programacin 1

Gua # 7: POO: Implementacin de Herencia

Notlnheritable (No heredable)


Como ya se menciono, que por omisin todas las clases en Visual Basic pueden heredarse. Habrn
ocasiones en que no queramos que una clase pueda heredarse; en tal caso, hay que especificar, al
declarar una clase, que sta no es heredable. La sintaxis para ello es la siguiente:
Notlnheritable Class NombreClase

End Class
En este caso, intentar heredar NombreClase generara un error (Inherits NombreClase).
Mustlnherit (Debe heredar)
Como sabemos, los objetos son instancias de una clase. Ya se explicaba que no se puede tener acceso a
la funcionalidad de una clase sino a travs de una instancia de la misma, es decir, de un objeto basado
en la clase. Eso es verdadero slo relativamente.
Habr alguna forma de que podamos disponer de la funcionalidad de una clase sin generar una
instancia de la misma?
La respuesta es que s. Podemos declarar una clase que no pueda instanciarse pero que pueda ser
utilizada slo si se hereda por otra clase. Para hacer eso es necesario especificar el estatuto Mustlnherit.
La sintaxis es la siguiente:
Mustlnherit Class NombreClase

End Class
En este caso, instanciar NombreClase generara error (Dim Objeto As New NombreClase())
Modificadores de acceso, necesarios para la herencia.
Usted debe determinar el alcance que tendr su jerarqua de clases, a efecto de restringir el acceso a las
clases, de tal manera que slo puedan heredarlas aquellas porciones de cdigo que deban hacerlo.
Calificar una clase como clase pblica (public class), se logra utilizando el modificador de acceso Public
al momento de la declaracin de la clase. Esto garantiza que todas las clases podrn utilizar la clase
todo el tiempo; en este caso, el acceso es abierto.

Lenguajes de Programacin 1

Gua # 7: POO: Implementacin de Herencia

Si no quiere una clase de acceso abierto, puede restringir el acceso a la clase utilizando los
modificadores de acceso Friend y Private.
Tome en cuenta que en una jerarqua de clases el acceso puede heredarse slo hacia un acceso igual o
mayor, nunca menor: una clase con acceso Public no puede heredar una clase Friend o Private, y una
clase Friend no puede heredar una Private.
Estatutos auxiliares para el manejo de herencia y polimorfismo
En ocasiones heredamos una clase, pero nos damos cuenta que algunas entidades (mtodos,
propiedades, eventos) no se ajustan del todo a lo que verdaderamente necesitamos; en resumen, no nos
sirven tal y como fueron heredadas. Es posible que pensemos que los elementos heredados son tiles,
pero que lo seran ms con algunas pequeas modificaciones.
Dichas modificaciones se realizan en la clase derivada, respecto de las definiciones originales existentes
en la clase base.
La programacin orientada a objetos hace posible que eso suceda, pues permite implementar diferentes
comportamientos para un mtodo (override), o de plano remplazarlo por completo (overload). La
funcionalidad heredada puede modificarse por otra que sea ms indicada para el problema de
programacin que deseamos resolver; con ello se promueve que la reutilizacin del cdigo sea flexible
y adaptable.
Por omisin, una clase derivada hereda los mtodos y propiedades de su clase base. Si necesitamos que
una propiedad o mtodo heredado se comporte de manera distinta a como se defini en la clase base,
puede ser implementada de forma distinta (overridden) o remplazada (overloaded); esto quiere decir
que la herencia sirve hasta donde nosotros deseamos comenzar a hacer modificaciones.
Los estatutos auxiliares de herencia sirven para especificar el grado de modificacin que ha de darse
entre la clase derivada y la clase base; estos son: Overridable, NotOverridable, Overrides.
MustOverride y Overloads.
En cuanto a la clase base hay tres escenarios:

Lenguajes de Programacin 1

Gua # 7: POO: Implementacin de Herencia

NotOverridable (No reemplazable)


El primer escenario es que la clase base no acepte que su funcionalidad sea modifica sustituida. En ese
caso, el estatuto NotOverridable evita que una propiedad o mtodo de una clase base pueda ser
sustituido en una clase derivada. Por omisin, los mtodos pblicos en una clase base son
NotOverridable.
Overridable (Reemplazable)
El segundo escenario es que la clase base admita modificaciones o sustituciones a su funcionalidad. El
estatuto Overridable establece que una propiedad o mtodo (elemento) de clase base puede ser
modificado en su implementacin o sustituido en una clase derivada.
MustOverride (Debe reemplazarse)
El tercer escenario es que la modificacin a la funcionalidad de la clase base no slo posible, sino que
sea obligatoria. El estatuto MustOverride hace que sea obligatorio hacer variaciones, en la clase
derivada, de las propiedades o mtodo de la clase base que han sido heredados.
Del lado de la clase derivada hay dos escenarios, que slo son posibles si los elementos de la clase base
permiten modificaciones en la funcionalidad.
Overrides (Reemplaza)
El primer escenario es cuando la clase base permite que su funcionalidad sea modifica respetando la
estructura original del elemento modificado. El estatuto Overrides permite la variacin en la clase
derivada, de sus propiedades o sus mtodos. Esto ser siempre y cuando se mantengan los mismos
argumentos en el mtodo de la clase base y la clase derivada Overrides slo permite desarrollar en la
clase derivada una implementacin distinta de un elemento de la clase base, y no su sustitucin por
otro que no guarde semejanza.
Overloads (Sobrecarga/Sustituye)
El segundo escenario es que se desee sustituir la funcionalidad, sin necesidad de respetar estructuras o
condiciones precedentes.
En ocasiones, adems de modificar el comportamiento de los mtodos que participan en una relacin
de herencia, es necesario hacer uso de diferentes argumentos, ya sea porque los que se tienen deben
considerar otros tipos de datos, o bien, porque el mtodo que modifica al heredado de la clase base
requiere una cantidad distinta de argumentos. En este caso, ya no hablamos de una implementacin
distinta de lo mismo, sino de dos mtodos bastante distintos entre s que comparten un nombre.

Lenguajes de Programacin 1

Gua # 7: POO: Implementacin de Herencia

En este ltimo caso, Overrides no sirve pues exige igualdad de argumentos. Para poder lograr nuestro
cometido, debemos utilizar Overloads, que indica la sustitucin del mtodo de la clase base por otro de
la clase derivada, tengan o no relacin entre s. Overloads es la nica forma de implementar, bajo un
mismo nombre, dos mtodos que no coinciden ms que en el nombre.
MyBase y MyClass
Se puede utilizar la palabra reservada MyBase para llamar a ejecucin a un mtodo de la clase base
desde una clase derivada. Esto quiere decir que a) si existe herencia entre dos clases, y b) en la clase
derivada se modifica un mtodo, entonces c) es posible mandar llamar a ejecucin al mtodo, ya sea en
la forma en que se encuentra en la clase base, o en la forma en que se encuentra en la clase derivada
misma.
Con MyBase podemos obligar a la aplicacin a que utilice un mtodo de la clase base y no de la clase
derivada; en caso contrario, es posible que queramos mandar llamar el mtodo tal y como est en la
clase derivada. Para ello utilizamos la palabra reservada MyClass, que se encarga de llamar a ejecucin
un mtodo que se encuentra en la misma clase cuando esta es derivada.
Es importante saber que tanto MyBase como MyClass, aunque en su manejo parecen objetos, realmente
no lo son. No se instancian; existen porque el lenguaje los proporciona para un manejo ms flexible de
la herencia y el polimorfismo.
Polimorfismo
El polimorfismo es la habilidad que tiene el lenguaje para definir mltiples clases que contengan
mtodos y propiedades del mismo nombre, pero que brindan diferente funcionalidad.
Cuando se presenta el polimorfismo es posible elegir, en tiempo de ejecucin, aquellos mtodos o
propiedades que necesitamos. No importa que varias clases posean los mismos mtodos y las mismas
propiedades: la aplicacin debe ser capaz de utilizar precisamente aquellas cuya funcionalidad estemos
invocando.
La herencia y la sustitucin de mtodos y propiedades tienen mucho que ver con el polimorfismo.
Cuando se declara una clase y a partir de sta se derivan otras clases, estamos ante la presencia de la
herencia; si adems de esto, los mtodos y propiedades de la clase base que fueron heredados son
modificados (Overriden) o sustituidos (Overloaded) en la clase derivada, de tal manera que comparten
el mismo nombre pero no la misma funcionalidad, estamos ante el polimorfismo. Una manifestacin
an ms pura del polimorfismos se presenta cuando se utiliza Overloads, que implica una sustitucin
completa de meto que se encuentran en clases que guardan una relacin de herencia.
Cuando en una clase derivada se modifican mtodos o propiedades de la clase base, se dice que hay
polimorfismo basado en herencia.

Lenguajes de Programacin 1

Gua # 7: POO: Implementacin de Herencia

III. MATERIALES Y EQUIPO


Para la realizacin de la gua de prctica se requerir lo siguiente:
No.

Requerimiento

Cantidad

Gua de Laboratorio 7 de LP1

PC con Microsoft Visual Studio 2012 .NET instalado

Memoria USB

Computadora con acceso a Internet

IV. PROCEDIMIENTO

Para esta prctica deber crear una carpeta con el nombre de Guia7LP1_SuCarnet, en la cual va a
guardar todos los archivos de esta prctica.
Ejercicio 1. Uso de Herencia
1. Abrir un nuevo proyecto en Visual Basic 2012
2. Colocar como nombre del proyecto: Guia7Ejercicio1
En este ejercicio la aplicacin debe calcular los descuentos y el sueldo neto de un empleado. Los datos
que necesita son los siguientes: Nombre, sueldo base y horas extras, se conoce que el empleado puede
laborar en cualquier turno ya sea maana o noche y las horas extras se pagan de acuerdo a ese turno (si
es en la maana cada hora extra vale $10 y si el turno es en la noche cada hora extra vale $15), para
calcular los descuentos debe tomar en cuenta que: Si el empleado trabaja en la maana este no tiene
seguro de vida, solamente tiene seguro de vida aquel empleado que trabaja en la noche.

Lenguajes de Programacin 1

Gua # 7: POO: Implementacin de Herencia

Descuentos:
Seguro=Sueldo base *10%
Seguro de vida=Sueldo base *12%
Sueldo Neto:
Sueldo neto= (Sueldo base + horas extras * pago por hora) descuentos
3. Crear el siguiente diseo del formulario del proyecto

4. Cambiar las propiedades de los controles del formulario, as como se muestra en la siguiente
tabla:
Control
Name

GroupBox2

Text
Datos del
Empleado
Descuentos

GroupBox3

Turno

GroupBox1

Label1
Label2
Label3
Label4

lblnombre
lblsueldobase
lblhorasextras
lblpagoporhora

Label5

lblseguro

Lenguajes de Programacin 1

Propiedades
Font
Microsoft Sans Serif;
Negrita; 9
Microsoft Sans Serif;
Negrita; 9
Microsoft Sans Serif;
Negrita; 9

Nombre:
Sueldo Base: $
Horas Extras:
Pago por hora
extra: $
Seguro: $
8

Enabled

False

ReadOnly

Gua # 7: POO: Implementacin de Herencia

Label6
Label7

lblsegurovida
lblsueldoneto

TextBox1
TextBox2
TextBox3
TextBox4
TextBox5
TextBox6
Label8

txtnombre
txtsueldobase
txthorasextras
txtpagoporhora
txtseguro
txtsegurovida
txtsueldoneto

0.00

RadioButton1
RadioButton2
Button1

turnomaana
turnonoche
btncalcular

Maana
Noche
Calcular

Button2

btnsalir

Salir

Seguro de Vida: $
Sueldo Neto: $

Microsoft Sans Serif;


Negrita; 9

True
True
Microsoft Sans Serif;
Negrita; 9

Microsoft Sans Serif;


Negrita; 9
Microsoft Sans Serif;
Negrita; 9

5. Agregar al proyecto un modulo y colocarle como nombre: Empleado


6. En el modulo Empleado, agregar la siguiente clase:

Lenguajes de Programacin 1

False

Gua # 7: POO: Implementacin de Herencia

7. Siempre en el modulo Empleado, agregar la siguiente clase:

8. En el formulario, coloque el siguiente cdigo, a nivel de formulario:

9. En el evento Load del formulario, coloque el siguiente cdigo:

Lenguajes de Programacin 1

10

Gua # 7: POO: Implementacin de Herencia

10. En el evento Click del botn btncalcular, coloque el siguiente cdigo:

11. Haga doble clic en el primer control de RadioButton (turnomaana) y coloque el siguiente
cdigo:

12. Haga doble clic en el segundo control de RadioButton (turnonoche) y coloque el siguiente
cdigo:

13. En el evento Click del botn btnsalir, coloque el siguiente cdigo:

14. Ejecute la aplicacin y realice las pruebas necesarias.

Lenguajes de Programacin 1

11

Gua # 7: POO: Implementacin de Herencia

Ejercicio complementario:
1. Coloque las validaciones necesarias en cada una de las entradas de datos
2. Modifique la aplicacin, de tal manera solo se tenga un mtodo descuentos, no importa si la
clase 2 se queda sin mtodos, por el momento.
3. Guardar los datos en un archivo de texto

Ejercicio 2. Uso de Herencia y Polimorfismo


1. Abrir un nuevo proyecto en Visual Basic 2012
2. Colocar como nombre del proyecto: Guia7Ejercicio2
Comprobacin del polimorfismo basado en herencia y el uso de MyBase
En este ejercicio se comprobar el polimorfismo basado en herencia; para ello se definen varias clases,
se heredarn unas con otras y se ver el uso de la palabra reservada MyBase.
El programa calcular lo que se le pagar a los empleados, partiendo del supuesto que puede haber un
pago normal, agregarse ms un bono por puntualidad del 25%, e incluso un bono adicional del 20%.
3. Crear el siguiente diseo del formulario:

4. Agregar un modulo al proyecto y tendr como nombre Module1.vb


Lenguajes de Programacin 1

12

Gua # 7: POO: Implementacin de Herencia

5. Edite el Module1.vb de tal forma que aparezca de la siguiente manera:

6. Agregue una clase llamada pago, que ser pblica.

7. Agregue un mtodo de nombre CalculaPago(), que ser pblico y que devolver un valor
Decimal, dentro de este mtodo agregar el Modificador de herencia Overridable.
8. En este punto, el cdigo del modulo debe lucir de la siguiente manera:

Lenguajes de Programacin 1

13

Gua # 7: POO: Implementacin de Herencia

9. Coloque como argumentos de CalculaPago() las horas trabajadas y el pago por hora.
Complemente el mtodo, a fin de que proporcione un resultado. El procedimiento debe quedar
de la siguiente manera:

10. Agregue una clase llamada PagoBonificado, que ser pblica y que se agregara al mdulo que
estamos trabajando. A esta clase agregue un mtodo de nombre CalculaPago(), que ser pblico
y devolver un valor Decimal
11. Edite el programa y agregue una lnea que especifique que la nueva clase hereda la
funcionalidad de la clase Pago (Inherits Pago). Aqu se generara una contaminacin de espacios
de nombres, dado que Pago ya posee un mtodo llamado CalculaPago(), y al estar heredando
su funcionalidad, equivaldra a estar definiendo dos miembros con el mismo nombre, lo cual no
es posible. Para evitar el problema, seleccione el mtodo CalculaPago () de PagoBonificado
deber modificarse la propiedad Modificador de herencia asignando un valor Overrides. Dado
que se est realizando una operacin de reemplazo (overrides), los argumentos del mtodo
deben ser exactamente los mismos. La nica variante entre los dos procedimientos es que el
mtodo CalculaPago() de la clase PagoBonificado retorna el monto a pagar multiplicado por la
constante de bono de puntualidad. Seguramente se dio cuenta de que el monto a pagar es un
dato que ya ofrece CalculaPago() de la clase Pago, por lo que se consume el mtodo de la clase
base. Cuando haya agregado la opcin overrides, codifique lo que hace falte, al final la clase
tiene que quedar de la siguiente manera:

Lenguajes de Programacin 1

14

Gua # 7: POO: Implementacin de Herencia

12. Agregue una clase llamada PagoBonificadoExtra, que ser pblica y que se agregara al mdulo
que estamos trabajando. A la nueva clase agregue un mtodo de nombre CalculoPago(), que
ser pblico y devolver un valor decimal.
13. Edite el programa y agregue una lnea que especifique que la nueva clase hereda la
funcionalidad de la clase PagoBonificado. Aqu se generara una contaminacin de espacios de
nombres, dado que Pago ya posee un mtodo llamado CalculaPago(), y al estar heredando su
funcionalidad, equivaldra a estar definiendo dos miembros con el mismo nombre, lo cual no es
posible.
14. Hay otro problema: el nuevo mtodo, adems de los beneficios de puntualidad, integrar un
beneficio adicional que el usuario podr especificar, por lo cual el mtodo CalculaPago() no
tiene el mismo nmero de argumentos que CalculaPago() de la clase PagoBonificado, por lo que
una operacin de remplazo no es posible. Deber realizarse una operacin de sustitucin
(overload) para que los argumentos del mtodo no necesariamente sean los mismos. Se tiene
que agregar el valor Overload para Modificador de herencia (lo cual tiene mucho sentido si
consideramos que la sustitucin tiene que ver ms con el polimorfismo que con la herencia). La
nica variante entre los dos procedimientos es que el mtodo CalculaPago() de la clase
PagoBonificadoExtra devuelve el monto a pagar multiplicado por la constante de bono de
puntualidad (informacin que ofrece el mtodo CalculaPago () de la clase base), y adems le
agrega un porcentaje adicional de beneficio.
15. Desarrolle el punto anterior modificando la siguiente clase a su programa, busque la clase
PagoBonificadoExtra y verifique que al final le queda el siguiente cdigo:

Lenguajes de Programacin 1

15

Gua # 7: POO: Implementacin de Herencia

16. Regrese al formulario, haga clic derecho sobre este y seleccione la opcin Ver cdigo y escribir
el siguiente cdigo:

17. Ejecute el proyecto y compruebe los valores.

Lenguajes de Programacin 1

16

Gua # 7: POO: Implementacin de Herencia

Conclusin del ejercicio:

Al ejecutarse el programa, se define el valor del bono de puntualidad

Dentro del formulario se genera una instancia de la clase Pago, una instancia de la clase
PagoBonificado y una instancia de PagoBonificadoExtra. La funcionalidad de nuestras
clases est disponible a travs de las variables objeto que acabamos de definir. Otro dato que
se provee es el nmero de horas por semana sobre las que se calculan los pagos (TextBox1) y
el nmero de Pago por hora (Textbox2).

En el TextBox3 se consume el mtodo CalculaPago() de la clase Pago, que es la que dio


origen al objeto PagoNormal. Se proporcionan como argumentos el nmero de horas
trabajadas (TextBox1) y el pago por hora (TextBox2). El mtodo se encarga de recibir los dos
valores, multiplicarlos y devolver el resultado. Es importante observar que este mtodo fue
codificado de tal forma que permite su remplazo y sustitucin (modificador Overridable).

En el TextBox4 se consume el mtodo: CalculaPago () de la clase PagoBonificado (la que dio


origen al objeto PagoBonificacion. Se proporcionan como argumentos el nmero de horas
trabajadas y el pago por hora. El mtodo se encarga de recibir los dos valores y declara una
variable de trabajo a la cual le asigna el valor retornado el mtodo MyBase. CalculaPago();
en virtud de que la clase base es Pago, sera equivalente a ejecutar Pago.CalculaPago(). Se
pasan los datos recibidos a MyBase.CalculaPago() y al resultado se le aplica el bono de
puntualidad. Es importante notar que la clase hereda la funcionalidad de la clase Pago y
remplaza la implementacin del mtodo Pago. CalculaPago (), por lo cual respeta la
cantidad y el tipo de los argumentos establecidos en la clase base.

En el TextBox5 se consume el mtodo CalculaPago () de la clase PagoBonificadoExtra, que es


la que dio origen al objeto PagoBonificacionPlus. Se proporcionan como argumentos el
nmero de horas trabajadas el pago por hora y el porcentaje aplicable al pago por buen
desempeo. El mtodo se encarga de recibir los tres valores y declara una variable de trabajo
la cual le asigna el valor retornado el mtodo MyBase.CalculaPago(), es decir,
PagoBonificado.ClaseBase(), a la cual le pasa los datos que necesita. Al resultado le aplica el
bono extra. Es importante observar que la clase hereda la funcionalidad de la clase
PagoBonificado y sustituye la implementacin del mtodo PagoBonificado.CalculaPago(),
dado que recibe un numero distinto de argumentos que el mismo mtodo en su clase base.

Conteste las siguientes interrogantes


Parte I. Preguntas
1. Qu es la herencia?
2. En qu casos se recomienda la implementacin de la herencia?
3. Cules son los estatutos para establecer relaciones de herencia entre clases?

Lenguajes de Programacin 1

17

Gua # 7: POO: Implementacin de Herencia

4. Mencione y explique los estatutos auxiliares de herencia y polimorfismo.


5. Mencione un ejemplo de automatizacin real, en donde pueda usted implementar herencia y
polimorfismo.

VI. BIBLIOGRAFA

Bill Evjen, Jason Beres y otros (2002), El libro de Visual Basic.NET (1era Ed), Espaa. Editorial
Anaya

Ceballos, Francisco Javier (2006), ENCICLOPEDIA DE MICROSOFT VISUAL BASIC (1er Ed),
Mexico, Editorial ALFAOMEGA, ISBN: 9701512189

Lenguajes de Programacin 1

18

S-ar putea să vă placă și