Introducción a la Programación en Java

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

Download "Introducción a la Programación en Java"

Transcripción

1 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 elemento fundamental de los programas en Java Todo programa consta de al menos una clase Recordemos: Clase: Tipo de datos, compuesto de atributos y métodos, que representa a una entidad o elemento de la realidad Instancia u objeto: Es un individuo particular de una clase, es decir, una variable de tipo clase 1

2 Declaración de una Clase [modif_clase] class nombre_clase [extends nombre_clase] [implements nombre_interfaz{, nombre_interfaz] { {[modif_atributos] tipo id_atributo [= valor_inicial]; {[modif_métodos] tipo_retorno id_método ([list_parám]) {cuerpo_método modifi_clase = abstract public final modif_atributos = private public protected final static modif_métodos = abstract private public protected final static Declaración de una Clase Recomendación metodológica: Los atributos deben ser privados Las métodos: Privado: si se utiliza como función aux Público: si va a ser utilizada fuera de la clase Cuando se expliquen los paquetes, se distinguirán más niveles de acceso 2

3 Ciclo de vida de un objeto Supuesta la definición de la clase NombreClase 1. Declaración de un objeto NombreClase obj; // declaración 2. Creación de una instancia obj= new NombreClase (); // declaración 3. Utilización de la instancia obj.función(...); // invocación de un método a = obj.atributo; // acceso a un atributo //función y atributo tienen que ser accesibles por //quien lo utiliza*. Ciclo de vida de un objeto 4. Destrucción del objeto o instancia Automática El objeto ya no es referenciado por nadie: A null todas las referencias del objeto Se sale del ámbito NombreClase obj= new NombreClase (); { NombreClase obj2= obj; // declaración... //Eliminación de una referencia obj= null; // Eliminación de la última referencia obj Entra en juego el GC 3

4 Modificadores de una clase Los modificadores de una clase son: abstract: La clase no está completa y no se pueden crear instancia final: No puede ser extendida public: Pública nada (friendly): Sólo se puede utilizar dentro del paquete en que se define (crear instancias o uso de métodos de clase) Herencia y especializaciones: extends e implements Modificadores de atributos y métodos De acceso para Atributos y Métodos: private: Nadie puede acceder al método o atributo nada (friendly): sólo es visible dentro del paquete que incluye la clase que lo definió protected: es friendly, y además es visible para todas las subclases de la clase que lo definió public: es visible para todos static: define atributo o método de clase final: en atributos junto con static define una constante. En métodos indica que no puede ser sobre escrito Sólo para métodos: abstract y la clase ha sido declarada como abstract 4

5 Recomendaciones sobre control de acceso Los atributos deben ser siempre privados Los métodos deben ser: friendly : si se desea que sólo sean utilizados dentro del paquete (no suele ser muy recomendable) protected: si se desea permitir que posibles subclases definidas en otros paquetes tengan acceso public: si se desea permitir el acceso a ellos desde cualquier parte del programa Ejemplo de clase public class Empleado { private String nombre; private double sueldo; public String getnombre() { return nombre; public void setnombre(string nombre1) { nombre = nombre1; public double getsueldo() { return sueldo; public void setsueldo(double sueldo1) { sueldo = sueldo1; 5

6 Ejemplo de clase import Empleado; public class TestEjemplo { public static void main(string[] args) { Empleado emp1; emp1 = new Empleado(); emp1.setnombre("pepe"); emp1.setsueldo(1000); System.out.print("El sueldo de " + emp1.getnombre() + " es " + emp1.getsueldo()); Constructor Método especial Permite inicializar un objeto al crearlo Mismo nombre que la clase No puede devolver valor o dato Si no se define java proporciona uno por defecto que asigna a cada atributo de instancia su valor por defecto: 0, false, 0l, 0.0f, null, \0 No se inicializan las variables locales de un método 6

7 Constructor El constructor se ejecuta al crear el objeto con el new El constructor puede tener parámetros Los parámetros se utilizan para inicializar los atributos Los parámetros se pasan al invocar a new Para notificar problemas al inicializar se utilizan excepciones Ejemplo de constructores public class Date { private int day, month, year; public Date(String date) { String [] partes = date.split("/"); day = Integer.parseInt(partes[0]); month = Integer.parseInt(partes[1]); year = Integer.parseInt(partes[2]); public Date(int d, int m, int y) { day=d; month=m; year=y; public String tostring() { return day + "/" + month + "/" + year; 7

8 Ejemplo de constructores import Date; public class TestDate { public static void main(string[] args) { Date ob1, ob2; ob1 = new Date(4, 11, 1996); ob2 = new Date( 22/10/2001"); System.out.println("La primera fecha es " + ob1); System.out.print("La segunda fecha es " + ob2); Garbage Collection (GC) Recoge la memoria que no es accesible (basura) Es activado de forma automática por la JVM Se puede sugerir su ejecución por medio de System.gc() La invocación manual se ha de realizar con cuidado GC sólo se encarga de recuperar memoria 8

9 Destructor Java no proporciona un destructor al uso El método finalize () es llamado por el GC Libera la memoria que ocupa el objeto Debe usarse sólo para liberar memoria No se debe utilizar para realizar tareas correspondientes a un destructor: Liberar recursos hardware Conexiones vía sockets Cerrar ficheros Etc. Definir métodos para la desinicialización Puntero this Todo método de instancia lleva un parámetro implícito Este parámetro una referencia al objeto sobre el que se hace la llamada Esta referencia se llama this Se puede usar para evitar colisiones de identificadores dentro de un método public class Date {... public Date(int day, int month, int year) { this.day=day; this.month=month; this.year=year; 9

10 Paquetes Permite agrupar en una misma librería varias clases e interfaces Un paquete crea un espacio de nombres Dos clases pertenecientes a distintos paquetes se pueden llamar igual Un paquete puede contener otros paquetes Si no se especifica nada la clase pertenece al paquete por defecto Cómo crear un paquete Al comienzo de todos los ficheros pertenecientes a un mismo paquete a : package a; Todos los.java perteneciente a un paquete debería colgar del mismo directorio Si el paquete a está dentro del paquete b, y éste a su vez está dentro de c, entonces: package c.b.a; 10

11 Cómo crear un paquete En un mismo fichero se pueden definir varias clases y/o interfaces, sólo una puede ser pública Todos los ficheros del paquete a deben: o estar localizados en un directorio llamado A que cuelgue de un directorio incluido en la variable CLASSPATH (por ejemplo: c/b/a) o estar incluidos en un file.jar, y el path del fichero debe estar incluido en la variable CLASSPATH Cómo usar un paquete Escribiendo la referencia completa al elemento: nombre_paquete.nombre_elem Importando: el paquete entero: import nombre_paquete.*; o sólo el elemento a ser utilizado: import nombre_paquete.nombre_elem; 11

12 Igualdad y Asignación Una variable declarada como de una cierta clase es una referencia o alias de un objeto NombreClase obj= new NombreClase (); { NombreClase obj2= obj; // declaración... //Eliminación de una referencia obj= null; // Eliminación de la última referencia obj obj obj2 Instancia NombreClase Igualdad y Asignación public static void main(string[] args) { Date ob1, ob2, ob3; ob1 = new Date(12, 4, 96); ob2 = ob1; // ambos se refieren al mismo objeto Date System.out.println("La primera fecha es " + ob1); System.out.println("La segunda fecha es " + ob2); ob1.setdia(10); // cambio el día por medio de ob1 if (ob1==ob2) // pero siguen siendo iguales System.out.println( Son iguales ); else System.out.println( Son distintos ); ob3 = new Date(10, 4, 96); if (ob1==ob3) // son distintos!? System.out.println( Son iguales ); else System.out.println( Son distintos ); 12

13 Igualdad y Asignación Por qué ob1 y ob3 son distintos? El operador de igualdad comprueba si ambas referencias son dos alias del mismo objeto, ob1 y ob3 son dos objetos con el mismo contenido, pero alias o referencias a instancias distintas Cómo podemos comparar dos objetos de modo que el resultado sea cierto si ambos objetos tienen el mismo contenido? Solución: definir un método equals() en la clase Date. Esta solución es la que se ha adoptado en la API (véase la clase String) Ejemplo con equals public boolean equals (Object o) { return (day==((date) o).day) && (month==((date) o).month) && (year==((date) o).year); public static void main(string[] args) { Date ob1, ob2; ob1 = new Date(12, 4, 96); ob2 = new Date("12/4/96"); System.out.println("La primera fecha es " + ob1); System.out.println("La segunda fecha es " + ob2); System.out.println(ob1 == ob2); System.out.println(ob1.equals(ob2)); 13

14 Paso de parámetros a funciones El paso de parámetros en Java no es por referencia, sino por valor Los cambios en los parámetros se pierden al terminar la función. static void intercambiar (Date d1, Date d2) { Date aux = d1; d1 = d2; d2 = aux; static void intercambiar (Date d1, Date d2) { "intercambiar d1.day y d2.day" "intercambiar d1.month y d2.month" "intercambiar d1.year y d2.year" Ejercicios Hacer una clase Menu que reciba un conjunto de cadenas de caracteres, el tipo de numeración que se desea: usando letras (a-z) o números (1-n) Definir una clase agenda y un programa de prueba que utilice la clase Menu. Debe permitirse insertar, borrar, buscar y Listar. Cada entrada de la agenda contendrá: Datos personales Datos de contacto 14

La sintaxis básica para definir una clase es la que a continuación se muestra:

La sintaxis básica para definir una clase es la que a continuación se muestra: DEFINICIÓN DE CLASES Y OBJETOS EN C# Sintaxis de definición de clases La sintaxis básica para definir una clase es la que a continuación se muestra: class nombreclase miembros De este modo se definiría

Más detalles

Tema 3. Programación orientada a objetos en Java (Parte 1)

Tema 3. Programación orientada a objetos en Java (Parte 1) Programación en Java Tema 3. Programación orientada a objetos en Java (Parte 1) Luis Rodríguez Baena Facultad de Informática Clases y objetos (I) Clase Cojunto de datos (atributos) y funciones (métodos)

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

Forma Básica Clase Java

Forma Básica Clase Java Programación Orientada a Objetos Conceptos Básicos de Objetos en Java Ing. Julio Ernesto Carreño Vargas MsC. Forma básica de una clase en Java Especifica que la clase forma parte del paquete conceptos

Más detalles

Tema 7: Polimorfismo. Índice

Tema 7: Polimorfismo. Índice Tema 7: Polimorfismo Antonio J. Sierra Índice Introducción. Sobrecarga de métodos. Objetos como parámetros. Paso de argumentos. Devolución de objetos. Recursividad. Control de acceso. Static. Final. Argumento

Más detalles

1.2. Es Java un lenguaje ideal para aprender a programar? 1.4. Cuáles son las versiones y distribuciones Java y cuál usar?

1.2. Es Java un lenguaje ideal para aprender a programar? 1.4. Cuáles son las versiones y distribuciones Java y cuál usar? 1 1. Introducción 1.1. Qué es Java? 1.2. Es Java un lenguaje ideal para aprender a programar? 1.3. Es Java software libre? 1.4. Cuáles son las versiones y distribuciones Java y cuál usar? 1.5. Qué sistema

Más detalles

Examen Teórico Convocatoria de Junio de 2012

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

Programación Orientada a Objetos. Resumen de Temas Unidad 3: Constructores y destructores

Programación Orientada a Objetos. Resumen de Temas Unidad 3: Constructores y destructores Programación Orientada a Objetos Resumen de Temas Unidad 3: Constructores y destructores 3.1 Conceptos de métodos constructor y destructor Java inicializa siempre con valores por defecto las variables

Más detalles

Modulo 11. Clases y Objetos en Java

Modulo 11. Clases y Objetos en Java El siguiente texto es una traducción no oficial del documento publicado por el grupo JEDI, Introduction to Programming 1, no pretende en ningún momento reemplazar los contenidos generados por este grupo.

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) [email protected] Contenidos Extensión mediante herencia.

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

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

3.4 Clases y Objetos 05/04/2004. Conceptos Generales. Modificadores de la Clase. Estructura de una Clase. Variables Miembros

3.4 Clases y Objetos 05/04/2004. Conceptos Generales. Modificadores de la Clase. Estructura de una Clase. Variables Miembros Conceptos Generales 3.4 Clases y Objetos Clases, miembros, constructores, control de acceso Las clases contienen los métodos que definen la computación Los campos (fields) o variables miembros definen

Más detalles

En este capitulo se estudiarán los conceptos relacionados a métodos, como lo son sobrecarga, métodos estáticos.

En este capitulo se estudiarán los conceptos relacionados a métodos, como lo son sobrecarga, métodos estáticos. Lección 3: Creando clases 1. Definición de métodos 2. Sobrecarga de métodos 3. Definición de constructores 4. Creando miembros estáticos 5. Construcción e inicialización de objetos Objetivos En este capitulo

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 en 3 horas. Ampliación de Sistemas Operativos. Rodrigo Santamaría

Java en 3 horas. Ampliación de Sistemas Operativos. Rodrigo Santamaría Java en 3 horas Ampliación de Sistemas Operativos Rodrigo Santamaría Generalidades Desarrollado por Sun Hereda mucha de la sintaxis de C (1972) Fuertemente tipado y orientado a objetos Aplicaciones compiladas

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

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

POO: Clases y objetos

POO: Clases y objetos POO: Clases y objetos Programación de aplicaciones 1 Introducción En los lenguajes de programación orientados a objetos, tenemos la posibilidad de extender el lenguaje mediante la creación de nuevo tipos,

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

Qué 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 + +.

Qué 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 detalles

Clases y Objetos en Java. ELO329: Diseño y Programación Orientados a Objetos

Clases y Objetos en Java. ELO329: Diseño y Programación Orientados a Objetos Clases y Objetos en Java ELO329: Diseño y Programación Orientados a Objetos Construyendo clases nuevas La forma más simple de una clase en Java es: Class Nombre_de_la_Clase { } /* constructores */ /* métodos

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

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

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 Sun en 1995 Hereda mucha de la sintaxis de C (1972) Fuertemente tipado y orientado a objetos Aplicaciones compiladas a bytecode Gestión

Más detalles

Examen Teórico. Convocatoria de Febrero de 2015

Examen Teórico. Convocatoria de Febrero de 2015 Examen Teórico Convocatoria de Febrero de 2015 Nombre: DNI: Grupo: 1. Contesta de forma razonada a las siguientes cuestiones relacionadas con los ficheros.jar: a) Para qué se utilizan los ficheros con

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

JAVA 1. Introducción

JAVA 1. Introducción Diseño de Interfaces de Usuario JAVA. Introducción. Características Portabilidad Interpretado (bytecodes) Uso de Máquina Virtual Java (JVM) Orientado a Objetos Jerarquía de clases Extensible (packages)

Más detalles

Práctica 2. Reutilización de código Elementos básicos del lenguaje Java Definición de variables, expresiones y asignaciones

Práctica 2. Reutilización de código Elementos básicos del lenguaje Java Definición de variables, expresiones y asignaciones Práctica 2 Reutilización de código Elementos básicos del lenguaje Java Definición de variables, expresiones y asignaciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos

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

PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez

PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez Elementos de lenguaje: Identificadores Tipos de datos 2 Tipos de datos primitivos 3 Tipos de datos referenciados Clases Interfaces Arrays

Más detalles

Clases y herencia. FJP Unidad 8. Diseño de clases

Clases y herencia. FJP Unidad 8. Diseño de clases Clases y herencia FJP Unidad 8 Encapsulamiento Diseño de clases El encapsulamiento provee protección de atributos y métodos definidos en una clase de forma tal que comportamiento de objetos de una clase

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

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) [email protected] Contenidos Introducción. Conversión

Más detalles

Estructura de datos y Programación

Estructura de datos y Programación Estructura de datos y Programación Tema: Conceptos Básicos- Estructuras de control - Arreglos Ing. Analia Méndez Ing. Raquel Zarco Año: 2012 ELEMENTOS DE UN PROGRAMA EN JAVA El programa Java consta de

Más detalles

Tema 3b: Estructura General de un programa en Java

Tema 3b: Estructura General de un programa en Java Tema 3b: Estructura General de un programa en Java 0 Modificadores de acceso Son keywords en Java que dan información al compilador sobre el ámbito en el que una clase, un método y/o una variable pueden

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

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

EJEMPLO DE CÓDIGO JAVA BÁSICO. CREAR CLASES CON CAMPOS, CONSTRUCTOR Y MÉTODOS. LA PALABRA CLAVE THIS (CU00652B)

EJEMPLO DE CÓDIGO JAVA BÁSICO. CREAR CLASES CON CAMPOS, CONSTRUCTOR Y MÉTODOS. LA PALABRA CLAVE THIS (CU00652B) APRENDERAPROGRAMAR.COM EJEMPLO DE CÓDIGO JAVA BÁSICO. CREAR CLASES CON CAMPOS, CONSTRUCTOR Y MÉTODOS. LA PALABRA CLAVE THIS (CU00652B) Sección: Cursos Categoría: Curso Aprender programación Java desde

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 [email protected]! Qué es la POO?! Un paradigma de programación! Un paradigma es una forma de afrontar

Más detalles

! Fundamentos de la POO. ! Comportamiento y estado. ! Clases y objetos en Java

! 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 [email protected] Enero 2012

Más detalles

Carlos Montenegro. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas

Carlos Montenegro. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas 2 - Introducción al lenguaje Java, identificadores y comentarios. Carlos Montenegro Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas 1. Introducción: Java tiene como todos

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

Programación orientada a objetos I

Programación orientada a objetos I Introducción Programación orientada a objetos I Curso INEM. Programación en C++ Santiago Muelas Pascual [email protected] Qué es la POO? Un paradigma de programación Un paradigma es una forma de afrontar

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

Tema 2: Programación basada en Objetos

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

Clases Abstractas e Interfaces

Clases Abstractas e Interfaces Clases Abstractas e Interfaces Presentación basada en: 1. Java 2., Curso de programación. Fco. Javier Ceballos. Ed. Alfoomega&RA-MA, 2003. 2. Apuntes del Curso Programación Orientado a Objetos. Pablo Castells.

Más detalles

16. Herencia Definición de herencia. 168 A. García-Beltrán y J.M. Arranz

16. Herencia Definición de herencia. 168 A. García-Beltrán y J.M. Arranz 168 A. García-Beltrán y J.M. Arranz 16. Herencia Objetivos: a) Definir el concepto de herencia entre clases b) Interpretar el código fuente de una aplicación Java donde aparecen clases relacionadas mediante

Más detalles

Conceptos Básicos. Programación Orientada a Objetos 2

Conceptos 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 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

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

TEMA 5. Agenda. Herencia

TEMA 5. Agenda. Herencia TEMA 5 Herencia V1.3 Manuel Pereira González Agenda Implementación Métodos Heredados vs Sobreescritos La Clase Object Resumen 1 Introducción Herencia Una clase (subclase ó clase hija) hereda la estructura

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

CLAVE ASIGNATURA REQUISITOS HORA/SEMANA CREDITOS TI-8 PROGRAMACION II 80% DE ASISTENCIA 4 6

CLAVE ASIGNATURA REQUISITOS HORA/SEMANA CREDITOS TI-8 PROGRAMACION II 80% DE ASISTENCIA 4 6 PRESENTACIÓN: La programación orientada a objetos es una evolución de la programación procedural basada en funciones. La POO permite agrupar secciones de código con funcionalidades comunes, pretende agrupar

Más detalles

Conceptos a tratar. Fundamentos de la Programación Orientada a Objetos Ampliación sobre clases y objetos

Conceptos a tratar. Fundamentos de la Programación Orientada a Objetos Ampliación sobre clases y objetos Fundamentos de la Programación Orientada a Objetos Ampliación sobre clases y objetos Programación Orientada a Objetos Facultad de Informática Dep. Ingeniería del Software e Inteligencia Artificial Universidad

Más detalles

INTRODUCCION A LA PROGRAMACION EN JAVA

INTRODUCCION A LA PROGRAMACION EN JAVA Departament d Arquitectura de Computadors INTRODUCCION A LA PROGRAMACION EN JAVA Índice Paso de parámetros en tiempo de ejecución Métodos static Atributos static Try-catch-finally Throws/throw 2 Paso de

Más detalles

4/14/2010. Objetivos. Que es JAVA. JAVA como plataforma. Reglas Sintácticas y de Codificación Básicas de JAVA

4/14/2010. Objetivos. Que es JAVA. JAVA como plataforma. Reglas Sintácticas y de Codificación Básicas de JAVA Reglas Sintácticas y de Codificación Básicas de JAVA Objetivos Que el alumno pueda: Identificar claramente los componentes del Lenguaje y su proceso de ejecución. Identificar y comprender las partes de

Más detalles

Test : Conteste exclusivamente en una HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.

Test : Conteste exclusivamente en una HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A. SISTEMAS INFORMÁTICOS I Junio 2003 INGENIERÍA EN INFORMÁTICA - Código Carrera 55 - Código Asignatura 077 Tipo de Examen: A NO SE PERMITE EL USO DE NINGÚN MATERIAL Tiempo: 2 horas Apellidos: Nombre: DNI:

Más detalles

Introducción a Java LSUB. 30 de enero de 2013 GSYC

Introducción a Java LSUB. 30 de enero de 2013 GSYC Introducción a Java LSUB GSYC 30 de enero de 2013 (cc) 2013 Laboratorio de Sistemas, Algunos derechos reservados. Este trabajo se entrega bajo la licencia Creative Commons Reconocimiento - NoComercial

Más detalles

Soluciones Ejercicios Tema 1

Soluciones Ejercicios Tema 1 BonoMetro (I) 1 Soluciones Ejercicios Tema 1 Germán Moltó Martínez [email protected] Estructuras de Datos y Algoritmos Escuela Técnica Superior de Ingeniería Informática Universidad Politécnica de Valencia

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 [email protected] Curso INEM. Programación en Java Marzo 2011 Índice Previo Repaso y encapsulación Empaquetado Relaciones entre clases Herencia

Más detalles

Examen Teórico. Convocatoria de Julio de 2015

Examen Teórico. Convocatoria de Julio de 2015 Examen Teórico Convocatoria de Julio de 2015 Nombre: DNI: Grupo: 1. Sobre la ejecución de aplicaciones Java desde la línea de comandos: a) Explica el significado y uso del parámetro cp. b) Indica si la

Más detalles

HOJA DE EJERCICIOS 5 PROGRAMACIÓN CON EXCEPCIONES EN JAVA

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

Definición. Mónica E. García García Feb 07

Definición. Mónica E. García García Feb 07 Tema 11: Herencia 0 Definición Cuando inicialmente se modelan dos cosas y se tienen datos duplicados y además pudiera darse que el número de métodos también es similar así como la implementación, se requiere

Más detalles

Identidad, igualdad y equivalencia

Identidad, igualdad y equivalencia Identidad, igualdad y equivalencia Introducción a la Programación Orientada a objetos 2018 Clases como tipos Cuando el analista o el diseñador de un sistema orientado a objetos especifica una clase, establece

Más detalles

Unidad IV. Este tipo de codificación nos es permitido gracias a la sobrecarga, la cual se aplica a métodos y constructores.

Unidad IV. Este tipo de codificación nos es permitido gracias a la sobrecarga, la cual se aplica a métodos y constructores. Unidad IV Métodos. 4.1 Definición de un método. El polimorfismo, en programación orientada a objetos, se refiere a la posibilidad de acceder a un variado rango de funciones distintas a través del mismo

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

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

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

Clases y Objetos en C++

Clases y Objetos en C++ Informática II Clases y Objetos en C++ Introducción Las variables de los tipos fundamentales de datos no son suficientes para modelar adecuadamente objetos del mundo real. alto, ancho y longitud para representar

Más detalles

PHP5 Orientado a Objetos

PHP5 Orientado a Objetos PHP5 Orientado a Objetos Hola a todos, en esta ocasión les traigo a ustedes un poco de información acerca de las mejoras introducidas en PHP5 las cuales son principalmente la orientación a objetos que

Más detalles

Categorías de métodos. Métodos constructores y destructores

Categorías de métodos. Métodos constructores y destructores 1. Categorías de los métodos 2. Inicialización de miembros 3. Métodos constructores 4. Inicialización de objetos con y sin constructores 5. Sobrecarga de funciones constructoras 6. Argumentos implícitos

Más detalles

RTTI y reflexión Modelos de datos

RTTI y reflexión Modelos de datos RTTI y reflexión Modelos de datos Carlos Fontela [email protected] Temario RTTI (información de tipos en tiempo de ejecución) Reflexión Modelo de datos y memoria de Java Otros modelos 1c2010 2 Transformaciones

Más detalles

Encapsulación: clases y objetos

Encapsulación: clases y objetos Encapsulación: clases y objetos Java y Servicios Web I Master en Ingeniería Matemática Manuel Montenegro Dpto. Sistemas Informáticos y Computación Desp. 467 (Mat) [email protected] Contenidos Clases

Más detalles

Clase adicional 2. Estructuras básicas de control. Temas

Clase adicional 2. Estructuras básicas de control. Temas Clase adicional 2 Temas Estructuras de control Sentencia condicional Iteración Clases Definir una clase Crear una instancia de una clase Campos estáticos Problemas de la clase adicional Problema de diseño

Más detalles

Estructuras de control condicionales

Estructuras de control condicionales Estructuras de control condicionales Por defecto, las instrucciones de un programa se ejecutan secuencialmente: El orden secuencial de ejecución no altera el flujo de control del programa respecto al orden

Más detalles

Ejecución de hebras. En realidad, todas las aplicaciones escritas en Java son aplicaciones multihebra (recuerde el recolector de basura).

Ejecución de hebras. En realidad, todas las aplicaciones escritas en Java son aplicaciones multihebra (recuerde el recolector de basura). Ejecución de hebras En realidad, todas las aplicaciones escritas en Java son aplicaciones multihebra (recuerde el recolector de basura). Hebras vs. Procesos Los cambios de contexto son más costosos en

Más detalles

HOJA DE EJERCICIOS 4 INTERFACES Y CLASES ABSTRACTAS EN JAVA Y C++

HOJA DE EJERCICIOS 4 INTERFACES Y CLASES ABSTRACTAS EN JAVA Y C++ Estructura de la Información en Programación I.T.I.G., Matemáticas. Curso 2009/2010 Nombre:... Fecha: / 12 / 2009 HOJA DE EJERCICIOS 4 INTERFACES Y CLASES ABSTRACTAS EN JAVA Y C++ Esta hoja de ejercicios

Más detalles