El documento presenta ejemplos de diferentes conceptos de programación orientada a objetos como encapsulamiento, abstracción, herencia, agregación, relaciones de uso y polimorfismo. Se definen cada uno de estos conceptos y se provee un ejemplo ilustrativo para cada uno. Finalmente, se pide definir una superclase Transporte con tres subclases Auto, Barco y Avión donde los atributos están en la superclase y los métodos están definidos e implementados en esta.
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Actividades de unidad 1
1. Actividades de Unidad 1.
Alumno: NovilloPablo.
1. Identifique la diferencia entre encapsulamiento y ocultamiento de la
información.
Encapsulamiento.
Se refiere acontenertodosloselementosde unaentidaddentrode unasolacapsula,
separandoestade otras entidadeslascualestienensupropiacapsulaparaevitarque se
mezclenysaberdónde comienzaunayterminalaotra.
Es parte de la motorización de unprograma,esdecir,la divisiónde este envariossegmentos
de códigopara que losmódulosnointerfieranentre si.
Básicamente significaalmacenartodoloque pertenezcaauna clase enla mismapara que no
se mezcle conlas demásclases.
Ocultamientode la información.
Evitar que alguieninterfieraenel sistemahace que todofuncione correctamente.
Para ellose utilizalaocultaciónde información,que eslaprotecciónde losatributosylos
métodosde unaentidad,esdecir,protegertodosloscomponentesque formanunaclase para
que así una clase externanointerferirconel normal funcionamientode lamisma.
Entoncesdecimosque ladiferenciaentre encapsulamientoyocultamientode lainformación,
esque,con el encapsulamientoagrupamostodos loscomponentesde unaentidadyconel
ocultamientoprotegemoslosmismoparael normal funcionamientodel programa.
2. Identifique la diferencia entre encapsulamiento y abstracción.
Abstracción.
Se refiere solamente arepresentarlascaracterísticasprincipalesde unobjeto,sinprofundizar
enlosdetalles.
Por ejemplo.UnÁrbol,decimosque tienehojas,ramas,untronco,que el tronco esde color
marrón,etc. Estas soncaracterísticas principalesde cualquierárbol,esdecir,unenfoque
global del objeto.
En cambio,si decimosque el árbol esde manzanas estamosespecificandocaracterísticasdel
objeto,entoncestenemosque decirque tiene manzanaslocual esunenfoque especifico.
Encapsulamientoyabstracciónvande lamano. La abstracción se centra en la vista externay
el encapsulamientoenlainterna.
3. Realice un ejemplo de Herencia, definiendo las abstracciones, sus
atributos y comportamientos.
La herenciadefine unarelaciónentreclasesporlaque unaclase ( hija/especifica) comparte la
estructurao comportamientode otrau otras clases( padre/genérica).
2. La herenciaporlotantopermite reutilizarcódigoheredandolascaracterísticasyel
comportamientode otraclase y modificareste comportamientosegúnseanecesario.
Existenciertasrestricciones enlaherencia.
Los atributosymétodoscon modode acceso prívate no se heredan,sololosde acceso
publicyprotectedpuedenserheredados.
No se heredaunatributode la clase padre si enla clase hijase define unatributocon
el mismonombre.
No se heredaunmétodosi éste essobrecargado.
No se heredanlosCONSTRUCTORES.Se invocaal constructor de la clase base con la
palabrasúpery la cantidadde parámetrosque requierael constructor.La palabra
súperse utilizaparadiferenciarlosmiembrosde laclase base.
Ejemplode Herencia.
Clase base: Humano.
Atributos: Nombre,altura,edad.
Comportamientos:Comer,dormir.
Clase Hombre.
Atributos: heredadosde laclase base.
Comportamiento:heredade clase base,y se agrega afeitarse.
Clase Mujer.
Atributos: heredadosde laclase base.
Comportamiento:heredade clase base,y se agrega maquillarse.
Se tiene unasuperclase oclase padre (clase Humano),ydosclaseshijas o subclases (clase
Hombre y Mujer).Las claseshijascompartenlaspropiedadesde laclase Humano,esdecir,sus
atributosy sucomportamientoya su vezcada una de ellastiene suspropiedades específicas.
4. Realice un ejemplo de agregación.
Agregación.
La agregaciónesuntipode asociaciónque indicaque unaclase esparte de otra clase
(composicióndébil).Loscomponentespuedensercompartidosporvarioscompuestos(de la
mismaasociaciónde agregaciónode variasasociacionesde agregacióndistintas).La
destruccióndel compuestonoconllevaladestrucciónde loscomponentes.Habitualmente se
da con mayor frecuenciaque lacomposición.
La agregaciónse representaenUML mediante undiamante de colorblancocolocadoenel
extremoenel que estálaclase que representael “todo”.
3. Ejemplo.
En este ejemplo vemos que la clase Empresa agrupa
varios clientes, pero la desaparición de la clase empresa
no afecta a la clase cliente, es decir, que la clase cliente
no desaparece.
5. Realice un ejemplo de relaciones de uso.
Muestra larelaciónentre clases,unade ellassolicitalos serviciosde laotra.
Ejemplo.
Para resolverunaecuaciónde segundogradodebemosrecurriralafunciónsqrtde laclase
Matemáticaspara calcular unaraíz cuadrada.
6. ¿Qué es polimorfismo? Ejemplifique.
El polimorfismopermite que distintosobjetospertenecientesauna misma
clase “respondan”de diferentesformasaunmismomensaje.
El polimorfismopermite modificarel comportamientode unmétodoencada
subclase.
En este ejemplo,lasuperclase mascotatiene lassubclases gato,patoyperro.El método
“saludar” cada subclase esdiferente.
En este ejemplocada tipo de mascota “saluda” de forma distinta.
Ecuación
-coeficientes[3]
+resolver()
Matemáticas
+pow()
+sqrt()
4. 7. Ejercicio.
a) Definimos cuatro clases, una súper clase (Transporte) y tres subclases
(Auto, Barco, Avión).
b) Cada atributo está definido en la súper clase.
c) Los métodos están definidos en la súper clase.
d) Todos los métodos están implementados en la súper clase.