LABORATORIO PROGRAMACIÓN JAVA SESIÓN 5-1: POO BÁSICO EN JAVA

Tamaño: px
Comenzar la demostración a partir de la página:

Download "LABORATORIO PROGRAMACIÓN JAVA SESIÓN 5-1: POO BÁSICO EN JAVA"

Transcripción

1 LABORATORIO PROGRAMACIÓN JAVA SESIÓN 5-1: POO BÁSICO EN JAVA En esta sesión realizaremos programas orientados a objetos básicos utilizando el lenguaje Java. Se pretende enseñar cómo realizar aplicaciones OO utilizando varias clases. 1. POO CON JAVA A continuación realizaremos unos ejemplos de utilización de las distintas técnicas de POO que nos proporciona Java. Con estos ejemplos aprenderemos la utilización de las interfaces, la herencia y las clases con métodos estáticos. 1. Ejemplo de definición y utilización de una interface: interface Trabajo double pagarsueldo(double horas); public class Empresa1 implements Trabajo //Esta empresa paga a 12 euros la hora de trabajo public double pagarsueldo(double horas) return horas*12; public class Empresa2 implements Trabajo //Esta empresa paga a 15 euros la hora de trabajo public double pagarsueldo(double horas) return horas*15; 2. Construir una interface en Java que contenga los siguientes métodos: interface ModuloCalculo double suma(double a, double b); double resta(double a, double b); double multiplica(double a, double b); double divide(double a, double b); 1

2 3. Construir una clase en Java que implemente la interface anterior: public class ModuloCalculoImpl implements ModuloCalculo public double suma(double a, double b) return a+b; public double resta(double a, double b) return a-b; public double multiplica(double a, double b) return a*b; public double divide(double a, double b) return a/b; 4. Construir una clase en Java que haga uso de la clase anterior y que sume 2+3, y multiplique el resultado por 8: public class PruebaMCI public static void main (String args[]) ModuloCalculoImpl mci = new ModuloCalculoImpl(); System.out.println( mci.multiplica(mci.suma(2, 3), 8) ); 5. Crear una nueva clase a partir de la clase ModuloCalculoImpl que tenga la operación módulo (%). public class ModuloCalculoImpl2 extends ModuloCalculoImpl public double modulo(double a, double b) return a % b; 6. Construir una clase en Java que haga uso de la clase anterior y que sume 2+3, y calcule el módulo de la división por 3: public class PruebaMCI2 public static void main (String args[]) ModuloCalculoImpl2 mci2 = new ModuloCalculoImpl2(); System.out.println( mci2.modulo(mci2.suma(2, 3), 3) ); 2

3 7. Construir una clase en Java que contenga métodos estáticos: public class Operaciones public static double suma(double a, double b) return a+b; public static double resta(double a, double b) return a-b; public static double multiplica(double a, double b) return a*b; public static double divide(double a, double b) return a/b; public static double modulo(double a, double b) return a % b; 8. Construir una clase en Java que haga uso de la clase anterior y que sume 2+3, y multiplique el resultado por 8: public class PruebaOperaciones public static void main (String args[]) System.out.println( Operaciones.multiplica(Operaciones.suma(2, 3), 8) ); 3

4 2. Ejemplo POO Coche A continuación realizaremos un programa orientado a objetos para la instanciación y manejo de objetos de tipo coche. Lo primero que haremos será crear un proyecto en NetBeans donde crearemos las clases. Para ello, en NetBeans pulsamos en el icono de nuevo proyecto y seleccionamos la categoría General y dentro Java Application. Rellenamos con la información mostrada a continuación: Una vez creado el proyecto pulsamos en el icono de nuevo fichero y seleccionamos la categoría Java Classes y dentro Java Class, incluyendo todas las clases que creemos dentro del paquete vehiculos : 4

5 En primer lugar se crean los atributos: marca, modelo, matrícula y velocidad; los tres primeros de tipo String y el último int. Para ello situamos el cursor sobre la zona de código y seleccionamos Insert Code y en el menú desplegable que aparece seleccionamos Add Property. En el cuadro de diálogo que se muestra se indica el tipo de acceso, el tipo de atributo, el nombre del atributo (también se puede indicar si se quiere inicializar); incluso se pueden generar los getter y los setter. 5

6 De la misma forma se procedería para los otros tres atributos: marca, modelo y velocidad. Obteniendo al final: 6

7 Los métodos get y set ya han sido creados según se iban creando los atributos. En caso de no haberlos implementado a la vez que los atributos se podría hacer de la siguiente forma: pulsamos con el botón derecho del ratón en Coche y seleccionamos Refactor y Encapsulate Fields, después pulsamos Refactor : El último paso que queda es crear el constructor, para ello situamos el cursor sobre la zona de código y seleccionamos Insert Code (como para los Atributos) y en el menú desplegable que aparece seleccionamos Constructor. En el cuadro de diálogo se marcan los atributos que vayan a ser utilizados: 7

8 El código final de la clase es el siguiente: - Clase Coche: package vehiculos; public class Coche /** Creates a new instance of Coche */ public Coche(String matricula, String marca, String modelo, int velocidad) this.matricula = matricula; this.marca = marca; this.modelo = modelo; this.velocidad = velocidad; //Atributos private String matricula; private String marca; private String modelo; private int velocidad; //Métodos public String getmatricula() return matricula; public void setmatricula(string matricula) this.matricula = matricula; public String getmarca() return marca; public void setmarca(string marca) this.marca = marca; 8

9 public String getmodelo() return modelo; public void setmodelo(string modelo) this.modelo = modelo; public int getvelocidad() return velocidad; public void setvelocidad(int velocidad) this.velocidad = velocidad; Para probar la clase Coche crearemos una clase con un método main, para hacerlo, pulsamos en el icono de nuevo fichero ( New File ) y seleccionamos la categoría Java y dentro Java Main Class : 9

10 - Clase PruebaCoches: package vehiculos; public class PruebaCoches /** Creates a new instance of PruebaCoches */ public PruebaCoches() /** args the command line arguments */ public static void main(string[] args) // TODO code application logic here Coche c1 = new Coche("1234 BCD", "Opel", "Astra", 0); Coche c2 = new Coche("2345 CDE", "BMW", "S1", 80); Coche c3 = new Coche("3456 DEF", "Audi", "A3", 100); c1.setvelocidad(60); System.out.println("velocidad: " + c1.getvelocidad()); Ahora solo nos falta ejecutarlo para crear los objetos c1, c2 y c3, además de probar a llamar al método setvelocidad. Extenderlo con más objetos y con más llamadas a métodos. 3. Ejercicio Banco 1 Se pretende realizar una pequeña aplicación en Java para la gestión de las cuentas de un banco. La aplicación se compondrá de una clase Cuenta para representar las cuentas y PruebaCuentas para instanciar y gestionar diversos objetos de tipo cuenta. La clase Cuenta debe contar como mínimo con los atributos: número de cuenta (String), titular (String), saldo (double) y fecha de apertura (Calendar). Extraer los métodos get y set correspondientes y añadirle los métodos retirar e ingresar dinero. 10

11 4. Ejemplo POO Empleados El siguiente ejemplo de POO consiste en la creación de una serie de clases que nos permiten gestionar los empleados de una empresa. Crearemos una librería de Java que luego podremos utilizar en diversos proyectos. Para ello en NetBeans pulsamos en el icono de nuevo proyecto y seleccionamos la categoría General y dentro Java Class Library : 11

12 Una vez creado el proyecto crearemos las distintas clases que formarán la librería que serán: Persona, Empleado y Departamento. Para crear estas clases pulsamos el icono de nuevo fichero y seleccionamos la categoría Java Classes y dentro Java Class, incluyendo todas las clases dentro del paquete empleados : El código de las tres clases es el siguiente: - Clase Persona: package empleados; public class Persona //Atributos private String DNI; private String nombre; protected int edad; protected String estado; //Constructor public Persona(String p_dni, String p_nombre, int p_edad, String p_estado) DNI = p_dni; nombre = p_nombre; edad = p_edad; estado = p_estado; //Métodos public String getdni() return DNI; public String getnombre() return nombre; public int getedad() return edad; public void cumpleaños() edad += 1; public String getestado() return estado; public void setestado(string nuevo) estado = nuevo; 12

13 // Devuelve información textual de una persona public String tostring() return DNI + " " + nombre; - Clase Empleado: package empleados; public class Empleado extends Persona //Atributos private String categoria; private double sueldo; private Departamento dept; //Constructor public Empleado(String p_dni, String p_nombre, int p_edad, String p_estado, String categoria, double sueldo, Departamento dept) super(p_dni, p_nombre, p_edad, p_estado); //constructor clase padre this.categoria = categoria; this.sueldo = sueldo; this.dept = dept; //Métodos public String getcategoria() return categoria; public void setcategoria(string nueva) categoria = nueva; public double getsueldo() return sueldo; public Departamento getdepartamento() return dept; public void setdepartamento(departamento otrodept) dept = otrodept; public void subesueldo(double cantidad) sueldo += cantidad; public void subesueldo(int porcentaje) sueldo += (sueldo * porcentaje/100); //Redefine el método cumpleaños public void cumpleaños() edad += 1; if (edad >65) estado = "JUBILADO"; //Imprime los datos del empleado public String tostring() return "Empleado: " + super.tostring() + " - Categoría: " + categoria + " - Sueldo: " + sueldo + " # Departamento: " + dept.tostring(); 13

14 - Clase Departamento: package empleados; import java.util.vector; public class Departamento //Atributos private String id; private String nombre; private String localizacion; private Vector empleadosdept; //Constructor public Departamento( String p_id, String p_nombre, String p_loc ) id = p_id; nombre = p_nombre; localizacion = p_loc; empleadosdept = new Vector(); //Métodos public String getiddept() return this.id; public String getnombredept() return this.nombre; public void setnombredept(string nombredept) this.nombre = nombredept; public String getlocalizaciondept() return this.localizacion; public void setlocalizaciondept(string localizaciondept) this.localizacion = localizaciondept; public Vector getempleadosdept() return this.empleadosdept; // Inserta un nuevo empleado en el departamento. Si lo inserta devuelve true public boolean setempleadodept(empleado emp) if (!empleadosdept.contains(emp)) this.empleadosdept.add(emp); return true; else return false; // Borra un empleado del departamento. Si lo borra devuelve true public boolean borraempleadodept(empleado emp) if (empleadosdept.contains(emp)) this.empleadosdept.remove(emp); return true; else return false; 14

15 // Imprime los datos del Departamento public String tostring() return getiddept() + " - " + getnombredept() + " - " + getlocalizaciondept(); Para probar la librería vamos a realizar un segundo proyecto llamado PruebaEmpleados de tipo Java Application dentro de la categoría General : Una vez creado accedemos a las propiedades del proyecto e incluimos la librería pulsando en AddProject y seleccionando el proyecto Empleados: 15

16 Rellenamos la clase Main como sigue: package pruebaempleados; import empleados.*; public class Main public static void main(string[] args) // TODO code application logic here //Creamos dos empleados Departamento dep1 = new Departamento("1","Prensa", "Madrid"); Empleado emp1 = new Empleado(" S","Pepe",65,"casado","Jefe",1500,dep1); Empleado emp2 = new Empleado(" Z","Maria",25,"soltera","Redactora",1000,dep1); //Aplicamos métodos System.out.println("Empleado 1: " + emp1.tostring()); System.out.println("Empleado 2: " + emp2.tostring()); emp1.cumpleaños(); emp1.subesueldo(100.0); System.out.println("Nombre: " + emp1.getnombre() + " Estado: " + emp1.getestado() + " Sueldo: " + emp1.getsueldo()); emp2.subesueldo(10); System.out.println("Nombre: " + emp2.getnombre() + " Sueldo: " + emp2.getsueldo()); 5. Ejercicio Banco 2 Se pretende modificar la aplicación de la gestión de las cuentas del banco de forma que se tenga una relación de asociación entre las cuentas y los clientes del banco. Para realizarlo tendremos que crear una clase Cliente que represente los clientes del banco. La clase Cliente debe contar como mínimo con los atributos: DNI (String), nombre (String), dirección (String) y fecha de nacimiento (Calendar) con sus métodos get y set correspondientes. Las clases deben representar la relación de asociación entre cuentas y clientes con la inclusión del atributo cuentas de tipo ArrayList en la clase Cliente y el atributo titulares de tipo ArrayList en la clase Cuenta. Se deben proporcionar los métodos necesarios para insertar y borrar clientes y cuentas. 16

17 6. Solución Ejercicio 1 Se pretende realizar una pequeña aplicación en Java para la gestión de las cuentas de un banco. La aplicación se compondrá de una clase Cuenta para representar las cuentas y PruebaCuentas para instanciar y gestionar diversos objetos de tipo cuenta. La clase Cuenta debe contar como mínimo con los atributos: número de cuenta (String), titular (String), saldo (double) y fecha de apertura (Calendar). Extraer los métodos get y set correspondientes y añadirle los métodos retirar e ingresar dinero. - Clase Cuenta: package banco; import java.util.calendar; public class Cuenta /** Creates a new instance of Cuenta */ public Cuenta(String numero, String titular, double saldo) this.numero = numero; this.titular = titular; this.saldo = saldo; this.fechaapertura = Calendar.getInstance(); private String numero; private String titular; private double saldo; private Calendar fechaapertura; public String getnumero() return numero; public String gettitular() return titular; public void settitular(string titular) this.titular = titular; public double getsaldo() return saldo; public void setsaldo(double saldo) this.saldo = saldo; public Calendar getfechaapertura() return fechaapertura; public void setfechaapertura(calendar fechaapertura) this.fechaapertura = fechaapertura; public void ingresar(double cantidad) this.saldo += cantidad; 17

18 public void retirar(double cantidad) this.saldo -= cantidad; public String tostring() return "Cuenta: " + this.numero + " - " + this.titular + " - " + this.saldo; - Clase PruebaCuentas: package banco; public class PruebaCuentas public static void main(string[] args) // TODO code application logic here Cuenta c1 = new Cuenta("1","Pepe",100); Cuenta c2 = new Cuenta("2","Maria",200); c1.ingresar(200); c2.retirar(100); System.out.println(c1.toString()); System.out.println(c2.toString()); 7. Solución Ejercicio 2 Se pretende modificar la aplicación de la gestión de las cuentas del banco de forma que se tenga una relación de asociación entre las cuentas y los clientes del banco. Para realizarlo tendremos que crear una clase Cliente que represente los clientes del banco. La clase Cliente debe contar como mínimo con los atributos: DNI (String), nombre (String), dirección (String) y fecha de nacimiento (Calendar) con sus métodos get y set correspondientes. Las clases deben representar la relación de asociación entre cuentas y clientes con la inclusión del atributo cuentas de tipo ArrayList en la clase Cliente y el atributo titulares de tipo ArrayList en la clase Cuenta. Se deben proporcionar los métodos necesarios para insertar y borrar clientes y cuentas. - Clase Cuenta2: package banco; import java.util.calendar; import java.util.arraylist; public class Cuenta2 /** Creates a new instance of Cuenta2 */ public Cuenta2(String numero, Cliente2 c, double saldo) this.numero = numero; this.settitularcuenta(c); this.saldo = saldo; this.fechaapertura = Calendar.getInstance(); 18

19 private String numero; private ArrayList<Cliente2> titulares = new ArrayList<Cliente2>(); private double saldo; private Calendar fechaapertura; public String getnumero() return numero; public ArrayList<Cliente2> gettitulares() return titulares; public void settitulares(arraylist<cliente2> titulares) this.titulares = titulares; public double getsaldo() return saldo; public void setsaldo(double saldo) this.saldo = saldo; public Calendar getfechaapertura() return fechaapertura; public void setfechaapertura(calendar fechaapertura) this.fechaapertura = fechaapertura; public void ingresar(double cantidad) this.saldo += cantidad; public void retirar(double cantidad) this.saldo -= cantidad; // Inserta un nuevo titular en la cuenta. Si lo inserta devuelve true public boolean settitularcuenta(cliente2 c) if (!titulares.contains(c)) this.gettitulares().add(c); c.setcuentatitular(this); //insertamos la cuenta en el titular return true; else return false; // Borra un titular de la cuenta. Si lo borra devuelve true public boolean borratitularcuenta(cliente2 c) if (!titulares.contains(c)) this.gettitulares().remove(c); c.borracuentatitular(this); //borramos la cuenta del titular return true; else return false; 19

20 public String tostring() return "Cuenta: " + this.numero + " - " + this.gettitulares().tostring() + " - " + this.saldo; - Clase Cliente2: package banco; import java.util.calendar; import java.util.arraylist; public class Cliente2 /** Creates a new instance of Cliente2 */ public Cliente2(String DNI, String nombre, String direccion, Calendar fecnac) this.dni = DNI; this.nombre = nombre; this.direccion = direccion; this.fecnac = fecnac; private String DNI; private String nombre; private String direccion; private Calendar fecnac; private ArrayList<Cuenta2> cuentas = new ArrayList<Cuenta2>(); public String getdni() return DNI; public void setdni(string DNI) this.dni = DNI; public String getnombre() return nombre; public void setnombre(string nombre) this.nombre = nombre; public String getdireccion() return direccion; public void setdireccion(string direccion) this.direccion = direccion; public Calendar getfecnac() return fecnac; public void setfecnac(calendar fecnac) this.fecnac = fecnac; public ArrayList<Cuenta2> getcuentas() return cuentas; 20

21 public void setcuentas(arraylist<cuenta2> cuentas) this.cuentas = cuentas; // Inserta una nueva cuenta. Si la inserta devuelve true public boolean setcuentatitular(cuenta2 c) if (!cuentas.contains(c)) this.getcuentas().add(c); return true; else return false; // Borra una cuenta. Si la borra devuelve true public boolean borracuentatitular(cuenta2 c) if (!cuentas.contains(c)) this.getcuentas().remove(c); return true; else return false; public String tostring() return "Cliente: " + this.dni + " - " + this.nombre + " - " + this.direccion; - Clase PruebaCuentas2: package banco; import java.util.calendar; public class PruebaCuentas2 public static void main(string[] args) // TODO code application logic here Calendar f1 = Calendar.getInstance(); f1.set(1980,1,1); Calendar f2 = Calendar.getInstance(); f1.set(1982,2,2); Cliente2 t1 = new Cliente2("1","Pepe","dir1",f1); Cliente2 t2 = new Cliente2("2","Maria","dir2",f2); Cuenta2 c1 = new Cuenta2("1",t1,100); Cuenta2 c2 = new Cuenta2("2",t2,200); c1.ingresar(200); c2.retirar(100); System.out.println(c1.toString()); System.out.println(c2.toString()); 21

Java Interfaces y el concepto de simplicidad

Java Interfaces y el concepto de simplicidad El concepto de Java Interfaces es de sobra conocido por todos. Qué son los Java interfaces?. Esta es una muy buena pregunta.la mayor parte de las veces cuando uno mira la definición de interface suele

Más detalles

Práctica No. 5. Estructuras con Memoria Dinámica

Práctica No. 5. Estructuras con Memoria Dinámica Práctica No. 5. Estructuras con Memoria Dinámica Comenzar creando un nuevo proyecto tipo Java llamada Practica05, crear también la clase principal. Se cambiará el nombre del paquete por defecto a uam.pvoe.estructuras.principal,

Más detalles

Herencia Java y Servicios Web I Master en Ingeniería Matemática

Herencia Java y Servicios Web I Master en Ingeniería Matemática Herencia Java y Servicios Web I Master en Ingeniería Matemática Manuel Montenegro Dpto. Sistemas Informáticos y Computación Desp. 467 (Mat) montenegro@fdi.ucm.es Contenidos Extensión mediante herencia.

Más detalles

Unidad Didáctica 3. Tipos genéricos. Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos

Unidad Didáctica 3. Tipos genéricos. Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Unidad Didáctica 3 Tipos genéricos Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Definición de tipo genérico Hablamos de un tipo genérico cuando el tipo en cuestión depende

Más detalles

Práctica 5c. Práctica 5c. José M. Ordax

Práctica 5c. Práctica 5c. José M. Ordax Práctica 5c José M. Ordax chemi@javahispano.org 1 Copyright 2004 Arancha Ocaña Díaz-Ufano Este documento puede ser distribuido solo bajo los términos y condiciones de la Licencia de Documentación de javahispano

Más detalles

FUNDAMENTOS DE PROGRAMACIÓN - Septiembre 2010

FUNDAMENTOS DE PROGRAMACIÓN - Septiembre 2010 Dpto. Ingeniería de Sistemas Telemáticos Universidad Politécnica de Madrid ETSI Telecomunicación, Ciudad Universitaria, 28040 Madrid FUNDAMENTOS DE PROGRAMACIÓN - Septiembre 2010 Normas del examen: Con

Más detalles

Estructuras de control selectivas

Estructuras de control selectivas Práctica 3 Estructuras de control selectivas Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 2.0.2 Concepto de sentencia y estructura de control El cuerpo de los métodos

Más detalles

Práctica 10a. Práctica 10a. José M. Ordax

Práctica 10a. Práctica 10a. José M. Ordax Práctica 10a José M. Ordax chemi@javahispano.org 1 Copyright 2004 José M. Ordax Este documento puede ser distribuido solo bajo los términos y condiciones de la Licencia de Documentación de javahispano

Más detalles

Manejo de archivos de acceso directo en Java.

Manejo de archivos de acceso directo en Java. Manejo de archivos de acceso directo en Java. Alumno.java package uam.edoo.archivos.directo.clases; public class Alumno { public static final int TAMANIO = 200; private String nombre; private String licenciatura;

Más detalles

Soluciones Ejercicios Tema 1

Soluciones Ejercicios Tema 1 BonoMetro (I) 1 Soluciones Ejercicios Tema 1 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 de Valencia

Más detalles

Uso de Java Generics (I)

Uso de Java Generics (I) Uno de los temas que mas quebraderos de cabeza da a los desarrolladores es la construcción Java Generics o simplemente clases Genéricas.Vamos a escribir algunos artículos hablando de este tema.para empezar

Más detalles

Clases abstractas e interfaces en Java

Clases abstractas e interfaces en Java Clases abstractas e interfaces en Java Clases abstractas public abstract class Figura { private String _nombre; public Figura (string nombre) { _nombre = nombre; final public boolean mayor_que (Figura

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS 10/02/2009. Examen de Java. Nombre: DNI: Titulación:

PROGRAMACIÓ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 detalles

Java 9 Modules y el concepto de modularidad

Java 9 Modules y el concepto de modularidad Todavía nos quedará tiempo para usar Java 9 Modules ya que acaban de llegar. Pero qué son y para que sirven los Java 9 Modules?. Hasta hoy en día Java ha organizado sus clases a través del concepto de

Más detalles

Diseño de tipos Igualdad, representación, código, copia y relación de orden

Diseño de tipos Igualdad, representación, código, copia y relación de orden Práctica 4 Diseño de tipos Igualdad, representación, código, copia y relación de orden Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 1.0.1 Índice Gestión de excepciones

Más detalles

TECNICAS DE PROGRAMACION Universidad Católica Los Angeles de Chimbote MODIFICADORES DE ACCESO A LOS MIEMBROS DE UNA CLASE

TECNICAS DE PROGRAMACION Universidad Católica Los Angeles de Chimbote MODIFICADORES DE ACCESO A LOS MIEMBROS DE UNA CLASE MODIFICADORES DE ACCESO A LOS MIEMBROS DE UNA CLASE Los modificadores de acceso, como su nombre indica, determinan desde qué clases se puede acceder a un determinado elemento. En Java tenemos 4 tipos:

Más detalles

Práctica 5. Fecha límite de entrega: viernes, 14 de diciembre

Práctica 5. Fecha límite de entrega: viernes, 14 de diciembre Algoritmos http://www.lfcia.org/alg/ 2007-2008 Ingeniería Informática Ingeniería Técnica de Informática de Gestión Práctica 5 Fecha límite de entrega: viernes, 14 de diciembre Implementación de un Diccionario

Más detalles

Tema 7.- Fundamentos de la Programación Orientada a Objetos

Tema 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 detalles

Grado en Ingeniería Informática. Estructura de Datos y Algoritmos, Grupo 84M, 2014/ de Marzo de

Grado en Ingeniería Informática. Estructura de Datos y Algoritmos, Grupo 84M, 2014/ de Marzo de Grado en Ingeniería Informática Estructura de Datos y Algoritmos, Grupo 84M, 2014/2015 12 de Marzo de 2015 Nombre y Apellidos:... PROBLEMA 1 (1 punto) Programación Orientada a Objetos. Una empresa de alquiler

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS 1/7/2009. Examen de Java. Nombre: DNI: Titulación:

PROGRAMACIÓ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 detalles

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta Centro Asociado Palma de Mallorca Introducción Práctica de Programación Java Antonio Rivero Cuesta Sesión VIII Composición... 4 Herencia... 8 Herencia e Inicialización... 11 Constructor de Superclase...

Más detalles

Ejercicio 3 Proyecto Intérprete Curso de Spring Framework

Ejercicio 3 Proyecto Intérprete Curso de Spring Framework www.globalmentoring.com.mx Curso de Spring Framework Ejercicio 3 Proyecto Intérprete Objetivo del Ejercicio El objetivo del ejercicio del Proyecto Intérprete. Al finalizar deberemos observar la siguiente

Más detalles

Java en 2 horas. Rodrigo Santamaría

Java en 2 horas. Rodrigo Santamaría Java en 2 horas Rodrigo Santamaría Generalidades 2 Desarrollado por Hereda mucha de la sintaxis de C (1972) Fuertemente tipado y orientado a objetos Aplicaciones compiladas a bytecode Gestión interna de

Más detalles

INTERFACE ITERATOR DEL API JAVA. MÉTODO REMOVE PARA BORRAR OBJETOS EN COLECCIONES. EJERCICIOS Y EJEMPLO RESUELTO. (CU00919C)

INTERFACE ITERATOR DEL API JAVA. MÉTODO REMOVE PARA BORRAR OBJETOS EN COLECCIONES. EJERCICIOS Y EJEMPLO RESUELTO. (CU00919C) APRENDERAPROGRAMAR.COM INTERFACE ITERATOR DEL API JAVA. MÉTODO REMOVE PARA BORRAR OBJETOS EN COLECCIONES. EJERCICIOS Y EJEMPLO RESUELTO. (CU00919C) Sección: Cursos Categoría: Lenguaje de programación Java

Más detalles

Examen. Programación II

Examen. Programación II UNIVERSIDAD ANDRÉS BELLO 1 Examen Programación II Nombre: Profesores: Nota: José Luis Allende Carlos Beyzaga. Fecha: 3 de Diciembre de 2013 Instrucciones: Coloque su nombre a todas las hojas. Seleccione

Más detalles

Conceptos básicos de Orientación a Objetos, manejo con Eclipse.

Conceptos básicos de Orientación a Objetos, manejo con Eclipse. Conceptos básicos de Orientación a Objetos, manejo con Eclipse. Arrancar Eclipse. Después de descomprimir la aplicación, dar doble clic sobre el ícono ejecutable para arrancar la aplicación. En caso de

Más detalles

Aplicaciones de Escritorio

Aplicaciones de Escritorio Aplicaciones de Escritorio Introducción n a la Programación Orientada a Objetos con Java Disertantes: Ing. Rasjido, Jose. AdeS Montenegro, Cristian. Agenda Clases y Paquetes. Clases y Paquetes. Modificadores

Más detalles

El concepto de Java Package Encapsulation

El concepto de Java Package Encapsulation El concepto de Java Package encapsulation no es conocido por todos. Todos los desarrolladores conocemos que existe public, private, protected y package visibility como operadores de ámbito. Sin embargo

Más detalles

Concurso: Cuánto sabes de JAVA?

Concurso: Cuánto sabes de JAVA? Concurso: Cuánto sabes de JAVA? Motivación: o Para cambiar el ritmo de las jornadas y que no todas las actividades sean charlas o Recordar conocimientos y aprender algo nuevo. o Las preguntas pueden ayudarnos

Más detalles

Soluciones Ejercicios Tema 3

Soluciones Ejercicios Tema 3 1 Soluciones Ejercicios Tema 3 Germán Moltó gmolto@dsic.upv.es Estructuras de Datos y Algoritmos Escuela Técnica Superior de Ingeniería Informática Universidad Politécnica de Valencia Solución Ejercicio

Más detalles

Introducción a Java. Fernando Cerezal López. 24 Noviembre 2005

Introducció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 detalles

Guía práctica de estudio 07: Herencia

Guía práctica de estudio 07: Herencia Guía práctica de estudio 07: Herencia Elaborado por: M.C. M. Angélica Nakayama C. Ing. Jorge A. Solano Gálvez Autorizado por: M.C. Alejandro Velázquez Mena Guía práctica de estudio 07: Herencia Objetivo:

Más detalles

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta Centro Asociado Palma de Mallorca Introducción Práctica de Programación Java Antonio Rivero Cuesta Sesión IX Composición... 4 Herencia... 8 Herencia e Inicialización... 12 Constructor de Superclase...

Más detalles

Polimorfismo Java y Servicios Web I Master en Ingeniería Matemática

Polimorfismo Java y Servicios Web I Master en Ingeniería Matemática Polimorfismo Java y Servicios Web I Master en Ingeniería Matemática Manuel Montenegro Dpto. Sistemas Informáticos y Computación Desp. 467 (Mat) montenegro@fdi.ucm.es Contenidos Introducción. Conversión

Más detalles

2. Tratamiento de objetos con JAVA

2. Tratamiento de objetos con JAVA 2. Tratamiento de objetos con JAVA David Contreras Bárcena (ETSI) - Comillas 71 2.1 Ciclo de Vida de los Objetos Los objetos tienen un tiempo de vida y consumen recursos durante el mismo. Cuando un objeto

Más detalles

HERENCIA (2ª parte) En Java todas las clases derivan de otra, aunque no se diga explícitamente.

HERENCIA (2ª parte) En Java todas las clases derivan de otra, aunque no se diga explícitamente. HERENCIA (2ª parte) Lenguajes de Programación - Orientación a Objetos: Herencia 2ª parte 1 Object En Java todas las clases derivan de otra, aunque no se diga explícitamente. Object: Es el nombre de la

Más detalles

Java Herencia vs Interfaces

Java Herencia vs Interfaces Java Herencia vs Interfaces es una de las comparaciones más típicas cuando uno empieza a programar en Java. Siempre se generan dudas de cuando usar cada una de ellas ya que su comportamiento es similar.

Más detalles

Swing 03 Introducción al Uso de Botones

Swing 03 Introducción al Uso de Botones Swing 03 Introducción al Uso de Botones En esta práctica se revisarán los conceptos básicos sobre el manejo de botones y lectura de datos. Se comenzará creando un nuevo proyecto llamado SW03 sin crear

Más detalles

Java 8 FlatMap y Streams

Java 8 FlatMap y Streams El uso de Java 8 FlatMap es algo que en muchas ocasiones cuesta entender. La programación funcional en Java 8 esta empezando y para la mayor parte de la gente es algo muy nuevo. Vamos a crear un ejemplo

Más detalles

// Método Comunicarse, sera implementado por las clases concretas que hereden de la clase //animal

// Método Comunicarse, sera implementado por las clases concretas que hereden de la clase //animal INTERFACE interface IAnimal { static final int valor=5; // Método Comunicarse, sera implementado por las clases concretas que hereden de la clase //animal public void comunicarse(); abstract class Animal

Más detalles

PROGRAMACIÓN EN JAVA. { una línea para definir, crear o ejecutar ; }

PROGRAMACIÓN EN JAVA. { una línea para definir, crear o ejecutar ; } PROGRAMACIÓN EN JAVA { una línea para definir, crear o ejecutar ; } JFC Y API SPECIFICATIONS OBJECT INTERFACE ABSTRACT IMPLEMENTS EXTENDS NEW EXTENDS (Hasta que una clase derivada deje de ser ABSTRACT)

Más detalles

JAVA. L.I Gerardo Benavides Pérez

JAVA. L.I Gerardo Benavides Pérez JAVA L.I Gerardo Benavides Pérez ORIENTADA A OBJETOS POO EN JAVA EXISTEN UNA FUERTE VINCULACIÓN DE CLASES CADA CLASE PUEDE TENER ACTIVIDADES DIFERENTES EN JAVA NO EXISTEN FUNCIONES, SE LLAMAN MÉTODOS CLASE

Más detalles

Implementar rehashing en TablaHash. Soluciones Ejercicios Tema 13. Implementar toarray en TablaHash. Radares de Tráfico (I)

Implementar rehashing en TablaHash. Soluciones Ejercicios Tema 13. Implementar toarray en TablaHash. Radares de Tráfico (I) Implementar rehashing en TablaHash 1 Soluciones Ejercicios Tema 13 Germán Moltó gmolto@dsic.upv.es Estructuras de Datos y Algoritmos Escuela Técnica Superior de Ingeniería Informática Universidad Politécnica

Más detalles

Herencia. Hay clases que comparten gran parte de sus características.

Herencia. Hay clases que comparten gran parte de sus características. Herencia Hay clases que comparten gran parte de sus características. El mecanismo conocido con el nombre de herencia permite reutilizar clases: Se crea una nueva clase que extiende la funcionalidad de

Más detalles

Ingeniería del Software Separación entre Presentación y Lógica del Negocio

Ingeniería del Software Separación entre Presentación y Lógica del Negocio Introducción En este laboratorio desarrollaremos una aplicación que verifica si una cuenta y un password son correctos. En dicha aplicación la presentación y la lógica del negocio se definirán en dos capas

Más detalles

Ejercicios de la asignatura Programación I

Ejercicios de la asignatura Programación I Ejercicios de la asignatura Programación I Grado en Ingeniería de Sistemas de Información Primer curso Profesor: Mariano Fernández López Escuela Politécnica Superior, Universidad San Pablo CEU 15 de octubre

Más detalles

INICIACIÓN A LA PROGRAMACIÓN LENGUAJE JAVA con BlueJ

INICIACIÓN A LA PROGRAMACIÓN LENGUAJE JAVA con BlueJ INICIACIÓN A LA PROGRAMACIÓN LENGUAJE JAVA con BlueJ Tema 3 Clases y Objetos Tema 4 Comunicación entre objetos. Algoritmos Tema 5 Herencia y abstracción de datos Tema 6 Diseño de clases TEMA 5: Herencia

Más detalles

Unidad V. Ya veremos qué poner en "algunas_palabras" y "algo_más", por ahora sigamos un poco más.

Unidad V. Ya veremos qué poner en algunas_palabras y algo_más, por ahora sigamos un poco más. Implementación Orientada a Objetos. Unidad V 5.1 Estructura de una clase. Una clase consiste en: algunas_palabras class nombre_de_la_clase [algo_más] { [lista_de_atributos] [lista_de_métodos] Lo que está

Más detalles

Introducción a la Programación en Java

Introducción a la Programación en Java Introducción a la Programación en Java Clases, Métodos y Atributos Ángel Lucas González Martínez Jaime Ramírez DLSIIS. Facultad de Informática Universidad Politécnica de Madrid Clase Las clases son el

Más detalles

PRIMER EXAMEN PARCIAL. 5 de febrero de SOLUCIONES

PRIMER EXAMEN PARCIAL. 5 de febrero de SOLUCIONES FUNDAMENTOS DE PROGRAMACIÓN Curso: 2012/13 PRIMER EXAMEN PARCIAL. 5 de febrero de 2013. SOLUCIONES Versión:1.0.7 EJERCICIO 1: El tipo Beca a) 0,25 puntos public enum TipoBeca { ORDINARIA, MOVILIDAD, EMPRESA

Más detalles

Vamos a mostrar el código fuente de la clase Persona y el del Servlet que imprime una lista de personas :

Vamos a mostrar el código fuente de la clase Persona y el del Servlet que imprime una lista de personas : Hoy en dia nos toca trabajar más y más con el formato JSON en el mundo Java. Hay situaciones en las que nuestro servidor de aplicaciones tiene soporte (JEE6) y otras muchas en las que no y nos tenemos

Más detalles

EJEMPLO EJERCICIO RESUELTO CON POLIMORFISMO, SOBREESCRITURA DE MÉTODOS Y HERENCIA JAVA. CÓDIGO (CU00691B)

EJEMPLO EJERCICIO RESUELTO CON POLIMORFISMO, SOBREESCRITURA DE MÉTODOS Y HERENCIA JAVA. CÓDIGO (CU00691B) APRENDERAPROGRAMAR.COM EJEMPLO EJERCICIO RESUELTO CON POLIMORFISMO, SOBREESCRITURA DE MÉTODOS Y HERENCIA JAVA. CÓDIGO (CU00691B) Sección: Cursos Categoría: Curso Aprender programación Java desde cero Fecha

Más detalles

Práctica 11f. Práctica 11f. José M. Ordax

Práctica 11f. Práctica 11f. José M. Ordax Práctica 11f José M. Ordax chemi@javahispano.org 1 Copyright 2005 José M. Ordax Este documento puede ser distribuido solo bajo los términos y condiciones de la Licencia de Documentación de javahispano

Más detalles

INTERFACE COMPARATOR. DIFERENCIAS ENTRE COMPARATOR Y COMPARABLE. CLASE COLLECTIONS. EJERCICIOS RESUELTOS. (CU00918C)

INTERFACE COMPARATOR. DIFERENCIAS ENTRE COMPARATOR Y COMPARABLE. CLASE COLLECTIONS. EJERCICIOS RESUELTOS. (CU00918C) APRENDERAPROGRAMAR.COM INTERFACE COMPARATOR. DIFERENCIAS ENTRE COMPARATOR Y COMPARABLE. CLASE COLLECTIONS. EJERCICIOS RESUELTOS. (CU00918C) Sección: Cursos Categoría: Lenguaje de programación Java nivel

Más detalles

Instituto Tecnológico de Zacatecas. Departamento de Sistemas y Computación. Licenciatura en Informática. Organización de Datos

Instituto Tecnológico de Zacatecas. Departamento de Sistemas y Computación. Licenciatura en Informática. Organización de Datos Instituto Tecnológico de Zacatecas Departamento de Sistemas y Computación Licenciatura en Informática Organización de Datos Ejercicios del Capítulo I Conceptos básicos de archivos Alumno y Número de control:

Más detalles

FACULTAD DE ECONOMIA Y ADMINISTRACION DEPARTAMENTO DE CIENCIAS DE LA COMPUTACION CÁTEDRA PROGRAMACION GENERAL. Trabajo Práctico Nº 4

FACULTAD DE ECONOMIA Y ADMINISTRACION DEPARTAMENTO DE CIENCIAS DE LA COMPUTACION CÁTEDRA PROGRAMACION GENERAL. Trabajo Práctico Nº 4 Trabajo Práctico Nº 4 Ejercicios Teóricos 1. Indique si las siguientes afirmaciones son verdaderas o falsas a. La programación orientada a objetos hace uso de clases y envío de mensajes entre objetos..

Más detalles

Tema 3 Herencia en Java Parte 2. Programación Orientada a Objetos Curso 2015/2016

Tema 3 Herencia en Java Parte 2. Programación Orientada a Objetos Curso 2015/2016 Tema 3 Herencia en Java Parte 2 Programación Orientada a Objetos Contenido Restringir la herencia. Visibilidad protegida. Clases abstractas. Interfaces. Clase Object. Autoboxing. Copia de objetos. Igualdad

Más detalles

class Nombre_Clase extends Nombre_SuperClase { cuerpo de la clase extendida }

class Nombre_Clase extends Nombre_SuperClase { cuerpo de la clase extendida } REUTILIZACIÓN DE CLASES:MODELO DE HERENCIA EN JAVA Java soporta herencia simple pero no múltiple. Lo hace mediante el mecanismo de extensión de clase. A partir de él, una subclase se extiende (hereda)

Más detalles

Programación Orientada a Objetos en Java

Programación Orientada a Objetos en Java Programación Orientada a Objetos en Java En nuestro post de hoy vamos a tratar el tema la programación orientada a objetos en Java, no todo va a ser.net! En si la POO es bastante amplia y muy necesario

Más detalles

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta Centro Asociado Palma de Mallorca Antonio Rivero Cuesta La Sintaxis de Java I... 5 Tipos de datos... 6 Tipos de datos simples... 7 Operadores... 11 Operadores Aritméticos... 12 Operadores relacionales...

Más detalles

INTERFACE LIST. CLASE LINKEDLIST DEL API JAVA. EJERCICIO RESUELTO Y DIFERENCIAS ENTRE ARRAYLIST Y LINKEDLIST (CU00921C)

INTERFACE LIST. CLASE LINKEDLIST DEL API JAVA. EJERCICIO RESUELTO Y DIFERENCIAS ENTRE ARRAYLIST Y LINKEDLIST (CU00921C) APRENDERAPROGRAMAR.COM INTERFACE LIST. CLASE LINKEDLIST DEL API JAVA. EJERCICIO RESUELTO Y DIFERENCIAS ENTRE ARRAYLIST Y LINKEDLIST (CU00921C) Sección: Cursos Categoría: Lenguaje de programación Java nivel

Más detalles

Curso de Java orientado a Android Parte 2

Curso de Java orientado a Android Parte 2 Curso de Java orientado a Android Parte 2 Introducción Java es un lenguaje de programación orientado a objetos (OOP). En este post cubriremos las características y principios básicos de la programación

Más detalles

Tema 6 Patrones de Diseño. Programación Orientada a Objetos Curso 2010/2011

Tema 6 Patrones de Diseño. Programación Orientada a Objetos Curso 2010/2011 Tema 6 Patrones de Diseño Programación Orientada a Objetos Curso 2010/2011 Contenido Introducción a los patrones de diseño. Patrón del Método plantilla. Patrón Composición. Patrón Estrategia. Clases anónimas

Más detalles

Programación orientada a objetos. Resumen de Temas Unidad 5: Herencia

Programación orientada a objetos. Resumen de Temas Unidad 5: Herencia Programación orientada a objetos Resumen de Temas Unidad 5: Herencia 5.1 Introducción a la Herencia La herencia es el mecanismo fundamental de relación entre clases en la orientación a objetos. Relaciona

Más detalles

Tema 1. Herencia y Polimorfismo

Tema 1. Herencia y Polimorfismo ÍNDICE EDA. Unidad didáctica I: Conceptos de Java para Estructuras de Datos Tema 1. Herencia y Polimorfismo 1. Relaciones entre clases: Reutilización del software. 2. La Herencia como soporte Java del

Más detalles

Práctica 11e. Práctica 11e. José M. Ordax

Práctica 11e. Práctica 11e. José M. Ordax Práctica 11e José M. Ordax chemi@javahispano.org 1 Copyright 2005 José M. Ordax Este documento puede ser distribuido solo bajo los términos y condiciones de la Licencia de Documentación de javahispano

Más detalles

Entiendo los métodos de Java equals y hashcode

Entiendo los métodos de Java equals y hashcode Todos los días cuando programamos usamos objetos y en muchas ocasiones necesitamos comparar unos con otros. Para ello en muchas ocasiones usamos los métodos de de Java equals y hashcode. Estos métodos

Más detalles

Clases en Java. Declaración

Clases en Java. Declaración Clases en Java Declaración Class Una clase puede ser definida por el usuario o por uno de los paquetes incorporados a Java y se declara con la palabra reservada class. Los métodos y las variables definidas

Más detalles

Formato para prácticas de laboratorio

Formato para prácticas de laboratorio Fecha de efectividad: 2011-1 Formato para prácticas de laboratorio CARRERA PLAN DE ESTUDIO CLAVE DE UNIDAD DE APRENDIZAJE NOMBRE DE LA UNIDAD DE APRENDIZAJE Ingeniero en Computación 2009-2 12099 Programación

Más detalles

Depto. Ingeniería de Sistemas Telemáticos Universidad Politécnica de Madrid ETSI Telecomunicación Fundamentos de Programación 15 de diciembre de 2011

Depto. Ingeniería de Sistemas Telemáticos Universidad Politécnica de Madrid ETSI Telecomunicación Fundamentos de Programación 15 de diciembre de 2011 Depto. Ingeniería de Sistemas Telemáticos Universidad Politécnica de Madrid ETSI Telecomunicación Fundamentos de Programación 15 de diciembre de 2011 Ejercicio 1 (2 puntos) SOLUCIONES class TarjetaDeCredito

Más detalles

PRÁCTICA 4: DISEÑO DE TIPOS Versión: 1.0.1

PRÁCTICA 4: DISEÑO DE TIPOS Versión: 1.0.1 FUNDAMENTOS DE PROGRAMACIÓN Curso: 2010/11 PRÁCTICA 4: DISEÑO DE TIPOS Versión: 1.0.1 SOLUCIONES Ejercicios 1, 2 y 3 Definición de interfaces Tipo Punto public interface Punto extends Copiable,

Más detalles

El concepto Java Reflection y como utilizarlo

El concepto Java Reflection y como utilizarlo Java Reflection es quizás el API que más versatilidad aporta al lenguaje Java ya que nos permite resolver muchos problemas de una forma totalmente diferente a la habitual. El API de Java reflection nos

Más detalles

CURSO : ESTRUCTURA DE DATOS DOCENTE : ING. JUAN ZEVALLOS VALLE

CURSO : ESTRUCTURA DE DATOS DOCENTE : ING. JUAN ZEVALLOS VALLE CURSO : ESTRUCTURA DE DATOS DOCENTE : ING. JUAN ZEVALLOS VALLE 1 Estructura de Datos 1. Logica de Programación 2. Uso de Algoritmos usando Lenguaje Java 3. Ingreso de datos 4. Sentencias de Control 1.

Más detalles

Lección 2: Creando una Aplicación en Java. 1. Estructura del archivo de una clase. 3. Definiendo clases fundamentos

Lección 2: Creando una Aplicación en Java. 1. Estructura del archivo de una clase. 3. Definiendo clases fundamentos Lección 2: Creando una Aplicación en Java 1. Estructura del archivo de una clase 2. Usando una clase 3. Definiendo clases fundamentos Objetivos Conocer: La forma en la cual está se está estructurado el

Más detalles

Introducción a Java. Introducción a Java. Programación I

Introducción a Java. Introducción a Java. Programación I Introducción a Java Introducción a Java Programación I Como Funciona Tipos de Datos TIPO TAMAÑO RANGO byte 8 bits Valores numéricos de 128 a 127 short 16 bits Valores numéricos de 32.768 a 32.767 int 32

Más detalles

12. Tipos de atributos

12. 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 detalles

LA CLASE VECTOR DEL API JAVA. MÉTODOS TRIMTOSIZE Y ENSURECAPACITY EJEMPLO Y EJERCICIOS RESUELTOS. (CU00922C)

LA CLASE VECTOR DEL API JAVA. MÉTODOS TRIMTOSIZE Y ENSURECAPACITY EJEMPLO Y EJERCICIOS RESUELTOS. (CU00922C) APRENDERAPROGRAMAR.COM LA CLASE VECTOR DEL API JAVA. MÉTODOS TRIMTOSIZE Y ENSURECAPACITY EJEMPLO Y EJERCICIOS RESUELTOS. (CU00922C) Sección: Cursos Categoría: Lenguaje de programación Java nivel avanzado

Más detalles

INSTITUTO TECNOLOGICO DE VILLAHERMOSA

INSTITUTO TECNOLOGICO DE VILLAHERMOSA INSTITUTO TECNOLOGICO DE VILLAHERMOSA ING. EN SISTEMAS COMPUTACIONALES CATEDRATICO: ING.MAURICIO ARTURO REYES HERNANDEZ ALUMNA: Jennifer Paola Jiménez lozano MATERIA: POO TRABAJOS: PROYECTOS Problema de

Más detalles

Utilizando un JPA Stream con JPA 2.2

Utilizando un JPA Stream con JPA 2.2 El concepto de JPA Stream es un concepto relativamente nuevo y viene con JPA 2.2 es decir no todo el mundo lo tiene disponible en su servidor de aplicaciones. Como su nombre indica permite devolver un

Más detalles

Java interface y extensibilidad

Java interface y extensibilidad En Java el uso de interfaces es algo común en la programación del día a día. Sin embargo también es bastante común tener muchas dudas de para que sirve un interface. Normalmente nos podemos encontrar con

Más detalles

EJERCICIO Y EJEMPLO RESUELTO: USO DE LA INTERFAZ CLONEABLE DE JAVA. MÉTODO CLONE() PARA CLONAR OBJETOS. (CU00912C)

EJERCICIO Y EJEMPLO RESUELTO: USO DE LA INTERFAZ CLONEABLE DE JAVA. MÉTODO CLONE() PARA CLONAR OBJETOS. (CU00912C) APRENDERAPROGRAMAR.COM EJERCICIO Y EJEMPLO RESUELTO: USO DE LA INTERFAZ CLONEABLE DE JAVA. MÉTODO CLONE() PARA CLONAR OBJETOS. (CU00912C) Sección: Cursos Categoría: Lenguaje de programación Java nivel

Más detalles

Examen de Métodos de Programación Ingeniería Informática Primera Parte

Examen de Métodos de Programación Ingeniería Informática Primera Parte Examen de Métodos de Programación Ingeniería Informática Primera Parte Cuestión 1. (2 puntos) Se pretende guardar y recuperar matrices de números reales de cualquier dimensión en ficheros binarios de tipos

Más detalles

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Unidad Didáctica 2 Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 1.0.3 Índice

Más detalles

Métodos de Programación

Métodos de Programación Métodos de Programación Tema 1. Introducción al diseño y especificación Tema 2. Clases, referencias y objetos en Java Tema 3. Modularidad y abstracción: aspectos avanzados Tema 5. Tratamiento de errores

Más detalles

! Qué es la POO?! Un paradigma de programación. ! No hay paradigmas mejores ni peores! Todos tienen sus ventajas e inconvenientes

! 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 detalles

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta Centro Asociado Palma de Mallorca Introducción Práctica de Programación Java Antonio Rivero Cuesta Sesión I Introducción... 7 Java Development Kit... 8 Bibliografía... 11 Clases y Objetos... 12 Estructura

Más detalles

Clases (construcción)

Clases (construcción) Clases (construcción) Carlos Fontela cfontela@fi.uba.ar Temario Implementación de clases Atributos Métodos y propiedades Constructores Excepciones Diseño contractual TDD o diseño guiado por las pruebas

Más detalles

Grado en Ingeniería Informática Estructura de Datos y Algoritmos, Grupo 80M, 2014/ de Marzo de

Grado en Ingeniería Informática Estructura de Datos y Algoritmos, Grupo 80M, 2014/ de Marzo de Grado en Ingeniería Informática Estructura de Datos y Algoritmos, Grupo 80M, 2014/2015 09 de Marzo de 2015 Nombre y Apellidos:... PROBLEMA 1 (1 punto) Programación Orientada a Objetos. Una compañía solicita

Más detalles

Tema 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 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 detalles

USO DE LOS OBJETOS JLABEL, JTEXTFIELD Y JBUTTON

USO DE LOS OBJETOS JLABEL, JTEXTFIELD Y JBUTTON USO DE LOS OBJETOS JLABEL, JTEXTFIELD Y JBUTTON Una aplicación sin usar Formulario A continuación vamos a desarrollar una aplicación sencilla que permita calcular el área del triángulo dado los valores

Más detalles

Programación orientada a objetos

Programación orientada a objetos Repaso Programación orientada a objetos Curso INEM. Programación en Java Santiago Muelas Pascual smuelas@fi.upm.es! Herencia! Superclase/subclase! super! Modificador protected! Redefinicion de métodos!

Más detalles

Programación Orientada a Objetos (Grado en Ingeniería Informática y Grado en Ingeniería en Tecnologías de la Información - UNED)

Programación Orientada a Objetos (Grado en Ingeniería Informática y Grado en Ingeniería en Tecnologías de la Información - UNED) Examen de Ejemplo Programación Orientada a Objetos (Grado en Ingeniería Informática y Grado en Ingeniería en Tecnologías de la Información - UNED) Parte Teórica (2,5 puntos). La respuesta correcta se indica

Más detalles

PARTE TEÓRICA - TEST [2,5 PUNTOS]:

PARTE TEÓRICA - TEST [2,5 PUNTOS]: UNIVERSIDAD NACIONAL DE EDUCACIÓN A DISTANCIA ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA INFORMÁTICA 71901072 PROGRAMACIÓN ORIENTADA A OBJETOS (GRADO EN INGENIERÍA INFORMÁTICA / TECNOLOGÍAS DE LA INFORMACIÓN)

Más detalles

Curso de Java POO: Programación orientada a objetos

Curso de Java POO: Programación orientada a objetos Curso de Java POO: Programación orientada a objetos Luis Guerra l.guerra@upm.es Curso INEM. Programación en Java Marzo 2011 Índice Previo Repaso y encapsulación Empaquetado Relaciones entre clases Herencia

Más detalles

EJERCICIO Y EJEMPLO RESUELTO: USO DE LA INTERFACE ITERABLE DEL API DE JAVA Y MÉTODO ITERATOR. RECORRER COLECCIONES DE OBJETOS (CU00915C)

EJERCICIO Y EJEMPLO RESUELTO: USO DE LA INTERFACE ITERABLE DEL API DE JAVA Y MÉTODO ITERATOR. RECORRER COLECCIONES DE OBJETOS (CU00915C) APRENDERAPROGRAMAR.COM EJERCICIO Y EJEMPLO RESUELTO: USO DE LA INTERFACE ITERABLE DEL API DE JAVA Y MÉTODO ITERATOR. RECORRER COLECCIONES DE OBJETOS (CU00915C) Sección: Cursos Categoría: Lenguaje de programación

Más detalles

Implementación del nivel de datos usando db4o

Implementación del nivel de datos usando db4o Introducción En este laboratorio, instalaremos y utilizaremos las clases necesarias para acceder a bases de datos orientadas a objetos db4o.. Objetivos En este laboratorio realizaremos lo siguiente: Instalar

Más detalles

Clases en Java. Declaración de clases en Java 02/09/16. Ing. Roberto Martínez Román - public class Alumno { private int matricula;

Clases en Java. Declaración de clases en Java 02/09/16. Ing. Roberto Martínez Román - public class Alumno { private int matricula; Clases en Java ESCRIBIENDO CLASES rmroman@itesm.mx Declaración de clases en Java public class Alumno private int matricula; public void mostrardatos() System.out.println("Matrícula: " + matricula); Firma

Más detalles

Tema 3 Herencia en Java Parte 2. Programación Orientada a Objetos Curso 2015/2016

Tema 3 Herencia en Java Parte 2. Programación Orientada a Objetos Curso 2015/2016 Tema 3 Herencia en Java Parte 2 Programación Orientada a Objetos Contenido Restringir la herencia. Visibilidad protegida. Clases abstractas. Clase Object. Autoboxing. Igualdad de objetos. Copia de objetos.

Más detalles

Examen de Prácticas de Programación Ingeniería Informática

Examen de Prácticas de Programación Ingeniería Informática Examen de Prácticas de Programación Ingeniería Informática Junio 2008 1) Cuestiones 1.a) (0.75 puntos) Mostrar los contenidos del fichero salida.txt tras la ejecución del método main de la clase principal:

Más detalles

Derechos de Acceso: COMPOSICION

Derechos de Acceso: COMPOSICION CLASES Una clase es un tipo definido por el usuario que describe los atributos y los métodos de los objetos que se crearan a partir de la misma. class nombre_clase cuerpo de la clase Derechos de Acceso:

Más detalles