Fundamentos de Programación Orientada a objetos en java
Transcript of Fundamentos de Programación Orientada a objetos en java
Bertha Mazón Olivo, Joffre Cartuche Calva, Wilmer Rivas Asanza
Universidad Técnica de Machala
Fundamentos de
Programación Orientada a objetos en java
Fundamentos de Programación Orientada a Objetos en java
Ing. César Quezada Abad, MBA
RectoR
Ing. Amarilis Borja Herrera, Mg. Sc.
ViceRRectoRa académica
Soc. Ramiro Ordóñez Morejón, Mg. Sc.
ViceRRectoR administRatiVo
COORDINACIÓN EDITORIAL
VICERRECTORADO ACADÉMICO
Tomás Fontaines-Ruiz, PhD.
inVestigadoR BecaRio PRometeo-Utmach
asesoR del PRogRama de ReingenieRía
Ing. Karina Lozano Zambrano
cooRdinadoRa editoRial
Ing. Jorge Maza Córdova, Ms.
Ing. Cyndi Aguilar
eqUiPo de PUBlicaciones
Fundamentos de Programación Orientada a Objetos en java
Bertha E. Mazón Olivo
Joffre J. Cartuche Calva
Víctor L. Chimarro Chipantiza
Wilmer B. Rivas Asanza
UNIVERSIDAD TÉCNICA DE MACHALA
2015
A nuestros queridos familiares, especialmente a nuestras parejas e
hijos por su apoyo y comprensión.
A nuestros estudiantes de la Carrera de Ingeniería de Sistemas
que están iniciando su proceso de formación en el campo de la
programación orienta a objetos.
Dedicatoria
Primera edición 2015
ISBN: 978-9978-316-72-6
D.R. © 2015, universidad técnica de machala
Ediciones utmach
Km. 5 1/2 Vía Machala Pasajewww.utmachala.edu.ec
este texto ha sido sometido a un proceso de evaluación por pares externos
con base en la normativa editorial de la utmach.
Portada:Concepto editorial: Jorge Maza CórdovaSamanta Cabezas (est. comunicación social)Fotografía: Dir. de Comunicación UTMACH
Diseño, montaje y producción editorial: UTMACH
Impreso y hecho en EcuadorPrinted and made in Ecuador
Advertencia: “Se prohíbe la reproducción, el registro o la transmisión parcial o total de esta obra por cualquier sistema de recuperación de información, sea mecánico, fotoquímico, electrónico, magnético, electroóptico, por fotocopia o cualquier otro, existente o por existir, sin el permiso previo por escrito del titular de los derechos correspondientes”.
[9]
Índice
Introducción..................................................................................13
Capítulo I:
Introducción a la programación orientada a objetos (poo) ......15
Evolución de los lenguajes de programación ...............................15
Técnicas de programación ........................................................17
La programación tradicional .......................................................18
Programación orientada a objetos (poo) .......................................18
Objetos o entidades reales ..........................................................20
Procesos de abstracción e instanciación .................................... 21
La poo frente a la programación tradicional ................................21
Conceptos orientados a objetos ..................................................22
Clase .........................................................................................23
Objeto ....................................................................................... 25
Miembros de una clase: datos y métodos ....................................27
Mensaje .....................................................................................28
Herencia ................................................................................28
Características de la programación orientada a objetos ............. 30
Soporte de la p.o.o. en java ....................................................... 32
Diagramas de clases con uml (Lenguaje Unificado de Modelado) 34
Capítulo II
Introducción a java, clases y objetos ........................................ 41Elementos de programación de java ............................................41Tipos de datos de java.................................................................42Operadores de java ....................................................................45Prioridad de operadores de java...................................................46Estructuras de control en java....................................................46Ejemplo narrativo orientado a objetos.........................................47Definición de clase......................................................................49Miembros de una clase...............................................................50
Datos o atributos .......................................................................50
Constructores ............................................................................51
Destrucción de objetos (liberación de memoria)...........................52
Métodos......................................................................................52
Instanciación de objetos..............................................................54Organización de un proyecto orientado a objetos en java.............56
Visibilidad de una clase (especificadores de acceso) .................... 59Pilares de la programacion orientada a objetos ...........................61
Modificador static ....................................................................64Modificador final ....................................................................65
Sobrecarga de métodos ..............................................................68
Arreglo estático de objetos (agregación estática o composición) .. 69
Lista dinámica de objetos (agregación dinámica).........................74
Capítulo III
Aplicación de herencia, clases abstractas e interfaces.............81
Herencia en java ....................................................................... 82
Constructores de clases derivadas, super y this ...................... 83
Clase abstracta ..........................................................................87
Interface ................................................................................... 90
Polimorfismo ............................................................................. 93Ligaduras estática y dinámica ................................................... 95
Vectores dinámicos ....................................................................96
Entrada/salida de datos en java (archivos) ................................97