13 b capitulo_7_fi_v1

42
Tema 10. Extensión de clases: Herencia. Sesión 8 3 mayo 13

Transcript of 13 b capitulo_7_fi_v1

Page 1: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia.

Sesión 8 3 mayo 13

Page 2: 13 b capitulo_7_fi_v1

Guía de cursoFundamentos de Informática (FI)

http://www.lsi.uned.es/fun_informatica_p_industGRADO DE INGENIERIA

Especialidad: Electricidad (Cod.: 6801)Especialidad: Electrónica (Cod.: 6802)Especialidad: Mecánica (Cod.: 6803)

Especialidad: Tecnología Industrial (Cod.: 6804)

Page 3: 13 b capitulo_7_fi_v1

Blog de FI Alzira-Valenciahttp://uned6xfi.blogspot.com

Page 4: 13 b capitulo_7_fi_v1

Unidad Didáctica II Tema 4. Objetos y clases.Tema 5. Definición de clase. Tema 6. Interacción entre objetos. Tema 7. Estructuras de almacenamiento y agrupación de objetos. Tema 8. Comportamiento avanzado con objetos.

Contenido de la asignatura (1/2)

Page 5: 13 b capitulo_7_fi_v1

Unidad Didáctica II Tema 9. Acoplamiento entre clases.Tema 10. Extensión de clases: Herencia.Tema 11. Manejo de errores y excepciones.Tema12.Pruebas.

Contenido de la asignatura (2/2)

Page 6: 13 b capitulo_7_fi_v1

Bibliografía básica (2/2)Los contenidos correspondientes a la Unidad

Didáctica II se pueden encontrar en el libro:

- Programación orientada a objetos con Java. Una introducción práctica usando BlueJ. David J. Barnes

y Michael Kölling. Pearson / Prentice Hall. 2007.

Page 7: 13 b capitulo_7_fi_v1
Page 8: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia.

Sesión 8 3 mayo 13

Page 9: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia.

1. El uso de la herencia 2. Jerarquías de herencia3. Herencia en Java 1. Herencia y derechos de acceso 2. Herencia e inicialización 3. Reutilización de código por medio de la herencia

4. Subtipos 1. Subclases y subtipos 2. Subtipos y asignación 3. Subtipo y paso de parámetros 4. Variables polimórficas 5. Enmascaramiento de tipos

5. La clase Object6. Tipos estáticos y dinámicos7. Sobreescritura de métodos8. Llamada a métodos con la palabra reservada super9. Métodos polimórficos10. Acceso protegido

Page 10: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

bien vs malprogramar

Page 11: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

Juego de las cavernas

Page 12: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

http://jerz.setonhill.edu/if/canon/Adventure.html - YA NO EXISTEhttp://jerz.setonhill.edu/blog/2012/04/14/gaming-made-me-colossal-cave-adventure-rock-paper-shotgun

http://www.rickadams.org/adventure

http://es.wikipedia.org/wiki/La_Aventura_Original

https://www.google.es/search?q=Colossal+Cave+Adventure&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:es-ES:official&client=firefox-a

Juego de las cavernas

Page 13: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

Page 14: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

Analizador

PalabrasComandoComando

Habitacion

Juego

Page 15: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

Page 16: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

http://es.wikipedia.org/wiki/Cohesi%C3%B3n http://es.wikipedia.org/wiki/Grasp#A.lta_cohesi.C3.B3n

http://es.wikipedia.org/wiki/Grasp#Bajo_acoplamiento

Page 17: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

http://es.wikipedia.org/wiki/Grasp#Bajo_acoplamiento

Page 18: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

http://es.wikipedia.org/wiki/Grasp#Alta_cohesi.C3.B3n_y_bajo_acoplamiento

Page 19: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

Page 20: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

Page 21: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

Page 22: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

Este nuevo método arreglaría la duplicidad

http://es.wikipedia.org/wiki/C%C3%B3digo_fuente

Page 23: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

Estos son los movimientos del juego

arriba

abajo

norte

sur

este

oeste

ACTUALES AMPLIAR

Page 24: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

Page 25: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herenciahttp://es.wikipedia.org/wiki/Encapsulamiento_%28inform%C3%A1tica%29

http://es.wikipedia.org/wiki/Grasp#Bajo_acoplamiento

Page 26: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

Page 27: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

Page 28: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

Page 29: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

Page 30: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

Page 31: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

Page 32: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

La segunda gran ventaja de la cohesión es el alto potencial para la reutilización.

Page 33: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

Page 34: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

Page 35: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

Page 36: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

Page 37: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

No ponga demasiadas cosas en un solo método

No ponga todo en una sola clase

¿Qué largo debe tener el método?

¿De qué tamaño debe ser una clase?

Page 38: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

Son métodos estáticos (static) que no requieren de la existencia de un objeto para poder ejecutarse.

Page 39: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

Page 40: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

Page 41: 13 b capitulo_7_fi_v1

Tema 10. Extensión de clases: Herencia

Page 42: 13 b capitulo_7_fi_v1

Muchas gracias por su atención

!Animo y bienvenido a la asignatura de

Fundamentos de Informática!

Tema 10. Extensión de clases: Herencia