Tema 2: Clases y Objetos
|
|
- Esther Álvarez Cárdenas
- hace 5 años
- Vistas:
Transcripción
1 Tema 2: Clases y Objetos Anexo: tipo de datos Pila Programación Orientada a Objetos Curso 2017/2018
2 Características del paradigma OO Curso 2017/2018 Programación Orientada a Objetos 2
3 Características del paradigma OO Curso 2017/2018 Programación Orientada a Objetos 3
4 Abstracción. Tipo de datos Pila Definición del tipo de datos Pila: inserta(x) añade x a la pila convirtiéndolo en el nuevo tope recupera() devuelve el elemento situado en el tope suprime() elimina el elemento situado en el tope vacía() devuelve verdadero si está vacía Fuente: Apuntes TP Juan Antonio Laguna Curso 2017/2018 Programación Orientada a Objetos 4
5 Pila Especificación en C En C, la especificación de un tipo de datos se realiza en ficheros cabecera (.h) #ifndef PILA_H #define PILA_H typedef int Elemento; typedef struct PilaRep * Pila; Pila crea(); void libera(pila p); void inserta(pila p, Elemento e); void suprime(pila p); Elemento recupera(pila p); int vacia(pila p); #endif Curso 2017/2018 Programación Orientada a Objetos 5
6 Pila Implementación en C La implementación de un tipo de datos se realiza en los ficheros de código fuente (extensión.c) Para un mismo tipo de datos podemos tener diferentes implementaciones. Así, por ejemplo, un pila puede ser implementada: Estática, basada en un array para almacenar los elementos. Dinámica, utilizando nodos enlazados, donde cada nodo contiene un elemento. Pila.h (definición TAD) PilaEstatica.c (representación Array) PilaDinamica.c (representación Nodos Enlazados) Curso 2017/2018 Programación Orientada a Objetos 6
7 Pila Estática - C #include"pila.h" #include<stdlib.h> PilaEstatica.c #define MAX 100 struct PilaRep Elemento elem[max]; int tope; ; Pila crea() Pila p = malloc(sizeof(struct PilaRep)); p->tope = -1; return p; void libera(pila p) free(p); // continúa Curso 2017/2018 Programación Orientada a Objetos 7
8 Pila Estática C // continúa void inserta(pila p, Elemento e) p->tope++; p->elem[p->tope] = e; void suprime(pila p) p->tope--; Elemento recupera(pila p) return p->elem[p->tope]; int vacia(pila p) return (p->tope==-1); int llena(pila p) return (p->tope==max-1); PilaEstatica.c Curso 2017/2018 Programación Orientada a Objetos 8
9 Pila estática C En C conseguimos aplicar ocultación de la información gracias a que la estructura de datos se define en el fichero de código fuente (struct PilaRep). Por tanto, el código que utilice el tipo de datos pila no conoce ni tiene acceso a la estructura de datos. Curso 2017/2018 Programación Orientada a Objetos 9
10 Pila Estática Java En Java, el concepto de clase permite especificar un tipo de datos e implementarlo en el mismo módulo. Además, ofrece encapsulamiento: la estructura de datos y el comportamiento (métodos) se definen conjuntamente en el mismo módulo. La función crea en C tiene el rol de un constructor de la clase. En Java, la memoria se libera automáticamente. Por tanto, no es necesario proporcionar una función libera. Los métodos no tienen como parámetro la pila. Trabajan sobre el objeto receptor de la llamada (this). Curso 2017/2018 Programación Orientada a Objetos 10
11 Pila Estática Java package pilas; public class PilaEstatica private static final int MAX = 100; // atributos de implementación private int[] elem; private int tope; public PilaEstatica() this.elem = new int[max]; this.tope = -1; // No hay destructor (libera) // continúa Curso 2017/2018 Programación Orientada a Objetos 11
12 Pila Estática Java // continúa public void inserta(int e) this.tope++; this.elem[this.tope] = e; public void suprime() this.tope--; public int recupera() return this.elem[this.tope]; public boolean vacia() return this.tope == -1; // Método para pilas limitadas public boolean llena() return this.tope == MAX - 1; Curso 2017/2018 Programación Orientada a Objetos 12
13 Encapsulación en Java public class PilaEstatica Estructura private static final int MAX = 100; private int[] elem; private int tope; public void inserta(int e) Comportamiento // this.tope++; this.elem[this.tope] = e; public void suprime() this.tope--; Curso 2017/2018 Programación Orientada a Objetos 13
14 Ocultación de Información en Java public class PilaEstatica Estructura Comportamiento final static int N = 100; int[] datos = new int[n]; int tope = -1; void inserta(int e) tope = tope +1; datos[tope] = x; void suprime() Privado Privado Privado Curso 2017/2018 Programación Orientada a Objetos 14
15 Pila Dinámica C #include "Pila.h" #include <stdlib.h> struct PilaRep Elemento elem; Pila sig; ; Pila crea() Pila p = malloc(sizeof(struct PilaRep)); p->sig = NULL; return p; void libera(pila p) while (p!= NULL) Pila aux = p; p = aux->sig; free(aux); // continúa... Curso 2017/2018 Programación Orientada a Objetos 15
16 Pila Dinámica C // continúa void inserta(pila p, Elemento e) Pila aux = malloc(sizeof(struct PilaRep)); aux->elem = e; aux->sig = p->sig; p->sig = aux; void suprime(pila p) Pila aux = p->sig; p->sig = p->sig->sig; free(aux); Elemento recupera(pila p) return p->sig->elem; int vacia(pila p) return (p->sig==null); Curso 2017/2018 Programación Orientada a Objetos 16
17 Pila Dinámica - Java En la implementación en C de la pila dinámia, el tipo que representa a la Pila tiene una definición recursiva: el campo sig es de tipo Pila. En la implementación Java optamos por introducir un tipo Nodo. Este nuevo tipo de datos debe tener un uso restringido a la implementación de la pila. Por tanto, la declaración del tipo tiene visibilidad a nivel de paquete: Solo los tipos de datos del paquete pilas pueden utilizar el tipo Nodo. Curso 2017/2018 Programación Orientada a Objetos 17
18 Pila Dinámica - Java package pilas; //Declaraciones a nivel de paquete class Nodo // Visibilidad privada // La implementación de la pila no tiene acceso private final int dato; private final Nodo sig; Nodo(int dato, Nodo sig) this.dato = dato; this.sig = sig; int getdato() return dato; Nodo getsig() return sig; Curso 2017/2018 Programación Orientada a Objetos 18
19 Pila Dinámica - Java package pilas; public class PilaDinamica private Nodo tope; public PilaDinamica() this.tope = null; public void inserta(int e) Nodo nuevo = new Nodo(e, this.tope); this.tope = nuevo; public void suprime() Nodo borrar = this.tope; this.tope = borrar.getsig(); // continúa Curso 2017/2018 Programación Orientada a Objetos 19
20 Pila Dinámica - Java package pilas; public class PilaDinamica // public int recupera() return this.tope.getdato(); public boolean vacia() return this.tope == null; // No tiene método llena Curso 2017/2018 Programación Orientada a Objetos 20
21 Programa en C Un programa en C no necesita conocer la implementación de la pila que se está utilizando. La implementación se enlaza durante la compilación. #include <stdio.h> #include "pila.h" int main() Pila pila = crea(); inserta(pila, 3); inserta(pila, 5); int valor = recupera(pila); printf("cima de la pila: %d", valor); // 5 libera(pila); return 0; Curso 2017/2018 Programación Orientada a Objetos 21
22 Programa en Java En cambio, un programa Java sí necesita conocer la implementación (clase) de la pila que utiliza. No obstante, en el tema 3 se introduce el concepto de interfaz que resuelve en parte este inconveniente. public class Programa public static void main(string[] args) PilaEstatica pila = new PilaEstatica(); pila.inserta(3); pila.inserta(5); int valor = pila.recupera(); Importante: las operaciones se aplican sobre el objeto System.out.printf("Cima de la pila: %d", valor); Curso 2017/2018 Programación Orientada a Objetos 22
Tema 1 Introducción al paradigma de programación orientado a objetos
Tema 1 Introducción al paradigma de programación orientado a objetos Programación Orientada a Objetos Curso 2017/2018 Contenido Introducción Paradigmas de programación vs. Lenguajes de programación Lenguajes
Más detallesIMPLEMENTACIÓN DE PILAS CON LISTAS EN C++
IMPLEMENTACIÓN DE PILAS CON LISTAS EN C++ Fichero nodo.h #ifndef NODO_H #define NODO_H const int cantidad_nodos = 10; class Nodo private: string dato; Nodo* siguiente; public: Nodo(); void setdato(string
Más detallesEstructuras de Datos
8 de marzo de 2011 1 2 3 4 5 Tipo de Dato Abstracto Un tipo de dato abstracto (TDA), corresponde a un conjunto de valores y un conjunto de operaciones sobre tales valores. s de TDA Enteros. Reales. Booleanos.
Más detallesINTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
UNIVERSIDAD DE MÁLAGA Dpto. Lenguajes y CC. Computación E.T.S.I. Telecomunicación INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Tema 4 Programación II Programación II 0 Tema 4: INTRODUCCIÓN A LA PROGRAMACIÓN
Más detallesCLASE 10 - ESTRUCTURAS DE DATOS DINÁMICAS
CLASE 10 - ESTRUCTURAS DE DATOS DINÁMICAS 1 TEMAS A VER Listas simples genéricas Pilas Colas 2 LISTA SIMPLE GENÉRICA Una lista simple genérica nos permite crear listas de diferentes objetos: enteros, char,
Más detallesTema 6. Gestión dinámica de memoria
Tema 6. Gestión dinámica de memoria http://aulavirtual.uji.es José M. Badía, Begoña Martínez, Antonio Morales y José M. Sanchiz {badia, bmartine, morales, sanchiz@icc.uji.es Estructuras de datos y de la
Más detallesTema 4- Representación Enlazada
Tema 4- Representación Enlazada Tema 4: Representación Enlazada Índice general: 1. Representación Enlazada: Variables referencia Java como enlaces. 2. Listas Enlazadas Genéricas. Operaciones y costes.
Más detallesTema: Tipos Abstractos de Datos (TAD s) en C++.
Programación II. Guía 12 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Tipos Abstractos de Datos (TAD s) en C++. Objetivos Específicos Explicar el concepto "Tipo Abstracto
Más detalles2.- PROGRAMACIÓN ORIENTADA A OBJETOS
2.- PROGRAMACIÓN ORIENTADA A OBJETOS Lenguajes de Programación - Orientación a Objetos 1 El éxito de la Progr. Orientada a Objetos Permite una mejor organización del software: Es más fácil (??) desarrollar
Más detallesIngeniera de Sistemas: Luz Esperanza Espitia Tutora de Estructura de datos.
Ingeniera de Sistemas: Luz Esperanza Espitia Tutora de Estructura de datos. Con relación a la Estructura LISTA Indicar objetos reales que se puedan modelar con dicha estructura. Listas de Ordenes de visitas
Más detallesEstructuras de Datos Clase 4 Pilas y colas
Estructuras de Datos Clase 4 Pilas y colas Dr. Sergio A. Gómez http://cs.uns.edu.ar/~sag Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Bahía Blanca, Argentina Tipo
Más detallesGESTIÓN DE MEMORIA DINÁMICA
UNIVERSIDAD DE MÁLAGA Dpto. Lenguajes y CC. Computación E.T.S.I. Telecomunicación GESTIÓN DE MEMORIA DINÁMICA Tema 3 Programación II Programación II 0 Tema 3: GESTIÓN DE MEMORIA DINÁMICA Tema 3: GESTIÓN
Más detallesImplementación de las Clases Pila, Cola, Lista y Arbol
1/1 Implementación de las Clases Pila, Cola, Lista y Arbol Josefina Sierra Santibáñez 13 de mayo de 2018 2/1 Implementación de Estructuras de Datos Implementaremos cada estructura de datos en dos niveles.
Más detallesEstructuras de Datos Dinámicas
Estructuras de Datos Dinámicas 1 Resumiendo, son aquellas cuyo tamaño (longitud, número de elementos...) varía en tiempo de ejecución. Las más famosas son: Listas simplemente enlazadas (con y sin cabecera),
Más detallesEstructura de Datos L I S T A
Estructura de Datos TDA L I S T A El TDA Lista El TDA Lista es una estructura compuesta por nodos (en los cuales se encuentran los datos almacenados) los cuales se encuentran enlazados entre si uno a uno
Más detallesIntroducción a Java. Fernando Cerezal López. 24 Noviembre 2005
24 Noviembre 2005 disponibles de acceso public private protected de tipo static abstract final modificadores más avanzados que no vamos a ver... Clase Sintaxis modificadores class nombreclase{} Tipos primitivos
Más detallesExamen Teórico Convocatoria de Junio de 2012
Examen Teórico Convocatoria de Junio de 2012 Nombre: DNI: Titulación: 1. Sobre el control de errores en Java: a) El siguiente método contiene un error de compilación debido al uso de excepciones. Explica
Más detallesAlgoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º SEMINARIO DE C++ Sesión 2
Algoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º SEMINARIO DE C++ Sesión 2 Contenidos: 1. Definición de clases 2. Implementación de los métodos 3. Constructores y destructores 4. Objetos
Más detallesUNIDAD 8 Tipos de datos dinámicos: Punteros Asignación dinámica de memoria. Uso de punteros. Inicialización y asignación de punteros.
Tipos de datos dinámicos: Punteros Asignación dinámica de memoria. Uso de punteros. Inicialización y asignación de punteros. Procedimientos para asignación y liberación de memoria. Tipos de datos recursivos.
Más detallesProgramación orientada a objetos I
Introducción Programación orientada a objetos I Curso INEM. Programación en C++ Santiago Muelas Pascual smuelas@fi.upm.es Qué es la POO? Un paradigma de programación Un paradigma es una forma de afrontar
Más detallesEstructuras de Datos. 14 de junio de Apellidos
Ejercicio 1) (3 puntos). Dado el TAD Pila de Números Enteros con las siguientes operaciones: boolean pilavacia (); void apilar (int x); int desapilar () throws PilaVacia; SE PIDE: Codificar un método estático
Más detallesTema 8. Listas. José M. Badía, Begoña Martínez, Antonio Morales y José M. Sanchiz
Tema 8. Listas http://aulavirtual.uji.es José M. Badía, Begoña Martínez, Antonio Morales y José M. Sanchiz {badia, bmartine, morales, sanchiz}@icc.uji.es Estructuras de datos y de la información Universitat
Más detallesPROGRAMACIÓN ORIENTADA A OBJETOS 1/7/2009. Examen de Java. Nombre: DNI: Titulación:
Examen de Java Nombre: DNI: Titulación: 1. Sea una aplicación Java donde todas las clases están compiladas y empaquetas en un solo fichero JAR (programa.jar). Qué sería necesario para conseguir ejecutar
Más detallesImplementación de las Clases Pila, Cola, Lista y Arbol
1/1 Implementación de las Clases Pila, Cola, Lista y Arbol Josefina Sierra Santibáñez 28 de noviembre de 2017 2/1 Implementación de Estructuras de Datos Implementaremos cada estructura de datos en dos
Más detallesAlgoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º SEMINARIO DE C++ Sesión 1
Algoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º SEMINARIO DE C++ Sesión 1 Contenidos: 1. Características generales de C++ 2. Entrada/salida estándar 3. Variables y tipos de datos
Más detalles! Fundamentos de la POO. ! Comportamiento y estado. ! Clases y objetos en Java
Introducción a la programación orientada a objetos Curso de Programación en Java! Fundamentos de la POO! Comportamiento y estado! Clases y objetos en Java Contenidos Luis Guerra l.guerra@upm.es Enero 2012
Más detallesTEMA 3. Árboles. Objetivos. Contenidos. Bibliografía. Básica
TEMA 3. Árboles Objetivos En este tema se estudia una de las estructuras de datos no lineal más importante en computación, el árbol. Comenzaremos introduciendo la terminología asociada a los árboles y
Más detallesInterfaces. Amparo López Gaona. Septiembre de Amparo López Gaona () Interfaces Septiembre de / 1
Interfaces Amparo López Gaona Septiembre de 2008 Amparo López Gaona () Interfaces Septiembre de 2008 1 / 1 Interfaces Las interfaces Java permiten al diseñador de clases establecer su forma definiendo
Más detallesEjercicio 1 (proyecto prlistas, paquete listas)
PRÁCTICA 3 Curso 2004-05 En esta práctica construiremos y usaremos dos paquetes: el primero, listas, que implementa listas genéricas y el segundo, colas, que implementa colas y colas de prioridades genéricas.
Más detallesUNIVERSIDAD AUTONOMA DE MADRID ESCUELA POLITÉCNICA SUPERIOR ESTRUCTURAS DE DATOS Y ALGORITMOS
UNIVERSIDAD AUTONOMA DE MADRID ESCUELA POLITÉCNICA SUPERIOR ESTRUCTURAS DE DATOS Y ALGORITMOS Curso 2008-09 Examen parcial APELLIDOS: NOMBRE: 1. (0.5 puntos) Enumera las características de un algoritmo
Más detallesESTRUCTURA DE DATOS Y ALGORITMOS Titulación: Ingeniero Técnico en Informática de Gestión Curso: 2º Nombre y apellidos: Nota:
Nombre y apellidos: Nota: NOTA FINAL: Nota Practica (1 punto) + Nota Examen (9 punto) Es indispensable aprobar el examen (4,5 puntos) para aprobar la asignatura (5 puntos) La práctica es opcional Duración:
Más detallesPROGRAMACIÓN GENÉRICA
PROGRAMACIÓN GENÉRICA Lenguajes de Programación - Orientación a Objetos: Progr. Genérica 1 Programación genérica Objetivo: escribir algoritmos genéricos, independientes de las clases concretas de los datos
Más detallesAgradecimientos. Nota de los autores. 1 Problemas, algoritmos y programas 1
Prologo Agradecimientos Nota de los autores Índice general I III V VII 1 Problemas, algoritmos y programas 1 1.1 Programas y la actividad de la programación.................... 4 1.2 Lenguajes y modelos
Más detallesLEA ATENTAMENTE ESTAS INSTRUCCIONES ANTES DE COMENZAR LA PRUEBA
Asignatura Estructura de Datos y Algoritmos Grado en Ingeniería Informática y Doble Grado en Informática y Administración de Empresas 24 de Marzo de 2014. SEGUNDO EXAMEN PARCIAL Nombre:... Apellidos:...
Más detallesEstructuras Enlazadas AyED UTN-BA
Funciones para estructuras enlazadas Sin Plantilla El Nodo Con plantilla para un dato genérico en info El Nodo struct Nodo1 int info; Nodo* sig; ; Nodo1* p1 = new Nodo1(); struct Nodo2 string info; Nodo*
Más detallesUNIDAD 8 Tipos de datos dinámicos: Punteros Asignación dinámica de memoria. Uso de punteros. Inicialización y asignación de punteros.
Tipos de datos dinámicos: Punteros Asignación dinámica de memoria. Uso de punteros. Inicialización y asignación de punteros. Procedimientos para asignación y liberación de memoria. Tipos de datos recursivos.
Más detallesINGENIERIA DE SISTEMAS 19 ESTRUCTURAS DE DATOS (Listas simples) ARBOLES
INGENIERIA DE SISTEMAS 19 ESTRUCTURAS DE DATOS (Listas simples) ARBOLES Un árbol es una estructura no lineal en la que cada nodo puede apuntar a uno o varios nodos. También se suele dar una definición
Más detallesBloque II. Elementos del lenguaje de programación Java
Bloque II. Elementos del lenguaje de programación Java 1.Introducción a los lenguajes de programación 2. Estructura de un programa 3. Datos y expresiones simples 4. Instrucciones de control 5. Entrada/salida
Más detallesTema 7.- Fundamentos de la Programación Orientada a Objetos
Tema 7.- Fundamentos de la Programación Orientada a Objetos 7 de enero de 2014 Objetivos Saber definir clases propias. Saber crear objetos de una clase determinada e interactuar con ellos (Problema 1).
Más detallesProgramación Orientada a Objetos en C++
Unidad I Programación Orientada a Objetos en C++ Programación Orientada a Objetos en C++ Programación I - 0416202 Contenido Esta lección abarca los siguientes temas: Estructura y declaración de una clase
Más detallesCI2126 PRÁCTICA 9: TAD COLA. 1) Implemente las operaciones C_Insert y C_Remove del TAD COLA usando a. un arreglo. La estructura sería:
CI2126 PRÁCTICA 9: TAD COLA. 1) Implemente las operaciones C_Insert y C_Remove del TAD COLA usando a. un arreglo La estructura sería: typedef struct s_cola ELEM elementos[max]; int primero,ultimo; STRUCTCOLA,*COLA;
Más detallesSólo una opción es correcta en cada pregunta. Cada respuesta correcta suma 1 4. puntos. Cada respuesta incorrecta resta 1 12
Programación de Sistemas Grados en Ingeniería de Sistemas Audiovisuales, Ingeniería de Sistemas de Comunicaciones, Ingeniería en Sistemas de Telecomunicación e Ingeniería Telemática Leganés, de julio de
Más detalles12. Tipos de atributos
Programación orientada a objetos con Java 135 12. Tipos de atributos Objetivos: a) Profundizar en el concepto de atributo de una clase e indicar los tipos de atributos en Java b) Interpretar el código
Más detallesCapitulo V Listas Enlazadas
Capitulo V Listas Enlazadas Muere lentamente, quien abandona un proyecto antes de iniciarlo, no preguntando de un asunto que desconoce o no respondiendo cuando le indagan sobre algo que sabe. Evitemos
Más detallesTema 2: Clases y Objetos en Java. Programación Orientada a Objetos Curso 2010/2011
Tema 2: Clases y Objetos en Java Programación Orientada a Objetos Curso 2010/2011 Contenido Clases. Objetos. Tipos del lenguaje. Relación de clientela. Semántica referencia. Métodos y mensajes. Instancia
Más detallesTema 7- Modelo y Aplicación de Pila, Cola y. Tema 7- Modelo y Aplicación de. Lista Con Punto de Interés
Tema - Modelo y Aplicación de Pila, Cola y Lista con Punto de Interés Tema - Modelo y Aplicación de Pila, Cola y Lista con Punto de Interés Índice general:. Modelo y Aplicación de Lista con Punto de Interés
Más detalles18. Interfaces Declaración de una interfaz
Programación orientada a objetos con Java 191 18. Interfaces Objetivos: a) Definir el concepto de interfaz b) Interpretar el código fuente de una aplicación Java donde aparecen interfaces c) Construir
Más detallesUNIDAD 8 Tipos de datos dinámicos: Punteros Asignación dinámica de memoria. Uso de punteros. Inicialización y asignación de punteros.
Tipos de datos dinámicos: Punteros Asignación dinámica de memoria. Uso de punteros. Inicialización y asignación de punteros. Procedimientos para asignación y liberación de memoria. Tipos de datos recursivos.
Más detallesTemario. Tema 5. Estructuras de Datos no Lineales. 5.1 Árboles Binarios 5.2 Árboles n-arios
Temario 5.1 Árboles Binarios 5.2 Árboles n-arios Especificación Utilización Representación Enlazada 5.3 Árboles Binarios de Búsqueda 5.4 Árboles Parcialmente Ordenados 1 Árbol n-ario: O bien es el conjunto
Más detallesProgramación Avanzada CONCEPTOS BÁSICOS DE IMPLEMENTACIÓN EN C++
Programación Avanzada CONCEPTOS BÁSICOS DE IMPLEMENTACIÓN EN C++ OBJETIVO En este documento se presentan las construcciones básicas de orientación a objetos del lenguaje de programación C++, y recomendaciones
Más detallesHOJA DE EJERCICIOS 3 HERENCIA ENTRE CLASES Y POLIMORFISMO DE MÉTODOS
Estructura de la Información en Programación I.T.I.G., Matemáticas. Curso 2009/2010 Nombre:... Fecha: / 11 / 2009 HOJA DE EJERCICIOS 3 HERENCIA ENTRE CLASES Y POLIMORFISMO DE MÉTODOS Esta hoja de ejercicios
Más detallesQué es Java? Un lenguaje de programación Un entorno de desarrollo Un entorno de aplicación Un entorno de despliegue Es similar en sintaxis de C + +.
APUNTES DE JAVA Agenda Bienvenida Conociendo Java La Maquina Virtual Descargar e instalar el compilador El entorno de trabajo El paradigma de la programación orientada a objetos Qué es Java? Un lenguaje
Más detallesPROGRAMACIÓN ORIENTADA A OBJETOS 10/02/2009. Examen de Java. Nombre: DNI: Titulación:
Examen de Java Nombre: DNI: Titulación: 1. Cómo podemos compilar desde la línea de comandos la clase Java A que utiliza una librería empaquetada bd.jar? 2. Indica si es correcto el siguiente código. Justifica
Más detallesEstructuras de Datos Clase 4 Pilas y colas
Estructuras de Datos Clase 4 Pilas y colas Dr. Sergio A. Gómez http://cs.uns.edu.ar/~sag Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Bahía Blanca, Argentina Tipo
Más detallesTipos de Datos Abstractos (TDA)
(TDA) Ingeniería de la Programación Un TDA es un tipo de dato definido por el programador que se puede manipular de un modo similar a los tipos de datos definidos por el sistema. Está formado por un conjunto
Más detallesSoluciones Ejercicios Tema 7. Cambio de Signo Pila (3/3) if (!p.esvacia()) { d i l cambiasignopila(p); this.apilar(new Integer(-dato));
Cambio de Signo Pila (1/3) Soluciones Ejercicios Tema 7 Germán Moltó Martínez gmolto@dsic.upv.es Estructuras de Datos y Algoritmos Escuela Técnica Superior de Ingeniería Informática Universidad Politécnica
Más detallesLISTAS CIRCULARES. // Métodos private CElemento() {} // constructor. ultimo
LISTAS CIRCULARES Una lista circular es una lista lineal en la que el último elemento apunta al primero. Entonces es posible acceder a cualquier elemento de la lista desde cualquier punto dado. Las operaciones
Más detallesSolución práctico 6 Tipos Abstractos de Datos Lista, Pila y Cola
Objetivos Trabajar sobre el Tipo Abstracto de Datos Lista, reforzando el desacople entre especificación e implementación. Retomar las implementaciones vistas, como ser Listas Doblemente Encadenadas, Listas
Más detallesTaller de Programación I. Tema 08: Estructuras Dinámicas de Datos en Java
INACAP Universidad Tecnológica de Chile Sede Santiago Centro Taller de Programación I Curso Java J2SE Tema 08: Estructuras Dinámicas de Datos en Java Ing. Manuel López Ramos Parte I Qué son las estructuras
Más detallesTema 3 Herencia en Java Parte 2. Programación Orientada a Objetos Curso 2016/2017
Tema 3 Herencia en Java Parte 2 Programación Orientada a Objetos Contenido Restringir la herencia. Clase Object. Autoboxing. Igualdad de objetos. Representación textual de objetos. Copia de objetos. Clases
Más detallesUnidad Nº V Listas Enlazadas
Instituto Universitario Politécnico Santiago Mariño Unidad Nº V Listas Enlazadas Lista Enlazadas Es una colección o secuencia de elementos dispuestos uno detrás de otro, en la que cada elemento se conecta
Más detallesLISTAS ENLAZADAS DOBLES C++
LISTAS ENLAZADAS DOBLES C++ fichero nodo.h #ifndef NODO_H #define NODO_H #include using namespace std; class Nodo private: int codigo; string nombre; float nota1; float nota2; float nota3; Nodo*
Más detallesClase adicional 9. Listas enlazadas. Temas. Listas enlazadas Árboles Problemas de la clase adicional Ejercicios de diseño
Clase adicional 9 Temas Listas enlazadas Árboles Problemas de la clase adicional Ejercicios de diseño Listas enlazadas Previamente en este curso, ya habrá trabajado con dos de las estructuras de datos
Más detallesSegundo parcial de Programación 2
Generalidades: Segundo parcial de Programación 2 a. La prueba es individual y sin material. b. La duración es 3hs. c. Sólo se contestan dudas acerca de la letra. 8 de Julio de 2016 d. Escriba las hojas
Más detalles12. COLAS Introducción Fundamentos
Ricardo Ferrís Castell Algoritmos y Estructuras de Datos I 12. COLAS 12.0 INTRODUCCIÓN...41 12.1 FUNDAMENTOS...41 12.2. REPRESENTACIÓN DE LAS COLAS EN C++...42 Implementación mediante estructuras estáticas:
Más detallesAlgoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º SEMINARIO DE C++ Sesión 3
Algoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º SEMINARIO DE C++ Sesión 3 Contenidos: 1. Funciones y clases genéricas 2. Excepciones 3. Asertos 4. El puntero this 5. Redefinición
Más detallesCONTENEDORES DE LA BIBLIOTECA
UNIVERSIDAD DE MÁLAGA Dpto. Lenguajes y CC. Computación E.T.S.I. Telecomunicación CONTENEDORES DE LA BIBLIOTECA ESTÁNDAR Tema 5 Programación II Programación II 0 Tema 5: CONTENEDORES DE LA BIBLIOTECA ESTÁNDAR
Más detalles! Qué es la POO?! Un paradigma de programación. ! No hay paradigmas mejores ni peores! Todos tienen sus ventajas e inconvenientes
Introducción Programación orientada a objetos Curso INEM. Programación en Java Santiago Muelas Pascual smuelas@fi.upm.es! Qué es la POO?! Un paradigma de programación! Un paradigma es una forma de afrontar
Más detalles3.- Desarrollar las clases Pluma, Agenda y Movil escribiendo la menor cantidad de código posible sin por ello perder claridad.
4. Ejercicio de programación Dado el siguiente programa principal: void main() Maletin mimaletin; mimaletin+=new Pluma(azul); mimaletin+=new Agenda(rojo); mimaletin+=new Movil(negro); mimaletin.mostrarcontenido();
Más detallesTipos Recursivos de Datos
1/1 Tipos Recursivos de Datos Josefina Sierra Santibáñez 27 de noviembre de 2016 2/1 Introducción La recursividad no sólo se puede aplicar a la definición de procedimientos (i.e. funciones o acciones),
Más detallesESTRUCTURA DE DATOS Y ALGORITMOS Titulación: Ingeniero Técnico en Informática de Gestión Curso: 2º Nombre y apellidos: Nota:
Nombre y apellidos: Nota: Escribe tu nombre y apellidos en esta hoja e inmediatamente en todas las suplementarias, incluso las de sucio. El no hacerlo puede suponer tu expulsión Puedes utilizar el lápiz
Más detallesHOJA DE EJERCICIOS 5 PROGRAMACIÓN CON EXCEPCIONES EN JAVA
Estructura de la Información en Programación I.T.I.G., Matemáticas. Curso 2008/2009 Nombre:... Fecha: / 01 / 2009 HOJA DE EJERCICIOS 5 PROGRAMACIÓN CON EXCEPCIONES EN JAVA Esta hoja de ejercicios nos servirá
Más detallesSoluciones. boolean pruebaiteraseriegeometrica () { Serie s= new SerieGeometrica (1, 2); return (s.iterator() instanceof IteraSerieGeometrica); }
dit UPM Depto. Ingeniería de Sistemas Telemáticos Universidad Politécnica de Madrid ETSI Telecomunicación Laboratorio de Programación 19 de Junio de 2002 Soluciones EJERCICIO 1 (UNA PÁGINA: UNA HOJA POR
Más detallesLas FILAS. ING PEDRO BELTRÁN CANESSA Estructuras de Datos 1
Las FILAS Estructuras de Datos 1 LA FILA (Conceptos...) Es un contenedor que utiliza el protocolo FIFO (First In, First Out) o bien, PEPS (Primeras Entradas, Primeras Salidas) Entrada Salida Estructuras
Más detallesTema 6: Memoria dinámica
: Programación 2 Curso 2013-2014 Índice 1 2 3 El tamaño es fijo y se conoce al implementar el programa Declaración de variables int i=0; char c; float vf[3]={1.0, 2.0, 3.0}; i c vf[0] vf[1] vf[2] 0 1.0
Más detallesIntroducción a OOP. Programación Orientada a Objeto
Introducción a OOP Programación Orientada a Objeto Evolución Programación no Estructurada, Programación procedimental, Programación modular y Programación orientada a objetos. Programación no Estructurada
Más detalles1. Cuántas sentencias hay en la secuencia principal del siguiente programa?
1. Cuántas sentencias hay en la secuencia principal del siguiente programa? public class PruebaSwitch { System.out.print ("Opcion: "); case 3: System.out.println ("miércoles "); A. 1. B. 4. C. Más de 10.
Más detallesExamen Teórico. Convocatoria de Febrero de 2016
Examen Teórico Convocatoria de Febrero de 2016 Nombre: DNI: Grupo: 1. Responde a las siguientes cuestiones: a) Un programador Java empaqueta el código de un proyecto en el fichero videojuego.jar cuya clase
Más detallesTema 2: Programación basada en Objetos
Tema 2: Programación basada en Objetos Programación Orientada a Objetos Marcos López Sanz Máster en Informática Gráfica, Juegos y Realidad Virtual Índice Objetivos Introducción Vista Pública Clases Objetos
Más detallesTema: Tipos Abstractos de Datos (TAD s) en C#.
Programación II. Guía No. 12 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Tipos Abstractos de Datos (TAD s) en C#. Objetivos Comprender el concepto Tipo Abstracto de Datos
Más detallesEstructura de Datos: Lista. Facultad Ingeniería y Tecnología Informática Tecnicatura en Programación de Computadoras. Autora: Prof.
Facultad Ingeniería y Tecnología Informática Tecnicatura en Programación de Computadoras Estructura de Datos: Lista Autora: Lunes a viernes de 9 a 21 h. Torre Universitaria, Zabala 1837, primer nivel inferior.
Más detallesCurso de Java POO: Programación orientada a objetos
Curso de Java POO: Programación orientada a objetos Luis Guerra Velasco Curso INEM. Programación en Java Diciembre 2010 Índice 1 Introducción 2 Comportamiento y estado 3 POO en Java 4 Relaciones 5 Herencia
Más detallesPilas Motivación
Capítulo 4 Pilas Las pilas son estructuras muy sencillas y poderosas, también conocidas como LIFO (last in, first out) por la forma en que se trabaja con ellas. Ejemplo de ellas son las pilas de charolas
Más detallesConceptos Básicos. Programación Orientada a Objetos 2
Programación Orientada a Objetos Conceptos Básicos de Objetos Ing. Julio Ernesto Carreño Vargas MsC. Conceptos Básicos Las aproximaciones ADOO y POO, proveen a los objetos como el principal medio para
Más detallesProgramación Introducción al Diseño de Tipos Abstractos de Datos
Programación 2 11- Introducción al Diseño de Tipos Abstractos de Datos 1 Sobre TADs Especificación TAD Imp. 1 Imp. m Aplicaciones void P1( ){ } void Pn( ){ } void P1( ){ } void Pn( ){ } 2 Algunas preguntas
Más detallesProgramación TADs Lineales Lista Pila Cola
Programación 2 7- TADs Lineales Lista Pila Cola 1 TAD LISTA 2 Definición Hemos visto la definición inductiva de listas. Más precisamente, definimos inductivamente los tipos Alista, para cualquier tipo
Más detallesLos Constructores(1)
Java: Definición de Clases y Objetos Presentación basada en: 1. Como Programar en Java. Deitel y Deitel. Ed. Prentice-Hall. 1988 2. Java 2., Curso de programación. Fco. Javier Ceballos. Ed. Alfoomega&RA-MA,
Más detallesProgramación II Objetos en Java
Programación II Objetos en Java Definición Objeto: Conjunto de datos y métodos relacionados. Los objetos se alojan en una parte de la RAM reservada al proceso denominada memoria dinámica, y son referenciados
Más detallesTema 4. Estructuras Dinámicas
Tema 4. Estructuras Dinámicas E.U.Politécnica. I.T.Industrial (Electricidad) E.U. Politécnica Departamento Lenguajes y Ciencias de la Computación. Universidad de Málaga José Luis Leiva Olivencia. Despacho:
Más detallesProgramación de sistemas Listas enlazadas
Programación de sistemas Listas enlazadas Departamento de Ingeniería Telemática 1 Contenidos *** Introducción a los genéricos Estructuras de datos Listas enlazadas La clase Node La clase LinkedList Ventajas
Más detallesSegundo Parcial de Programación 2 7 de junio de 2017
Instituto de Computación. Facultad de Ingeniería. Universidad de la República Segundo Parcial de Programación 2 7 de junio de 2017 Problema 1 (30 puntos) Considere un TAD T que permita almacenar a lo sumo
Más detallesESTRUCTURAS DINÁMICAS DE DATOS (COLAS) EN C
2013 ESTRUCTURAS DINÁMICAS DE DATOS (COLAS) EN C Departamento de Computación UNAN-León TEMA 5: ESTRUCTURAS DINÁMICAS DE DATOS (COLAS) 5.1 INTRODUCCIÓN: Las colas son secuencias de elementos caracterizadas
Más detalles