Tema 1. Herencia y Polimorfismo

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

Download "Tema 1. Herencia y Polimorfismo"

Transcripción

1 Í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 modelo ES UN(A) Conceptos básicos de Herencia y su sintaxis en Java. Definición de clases herederas. Compatibilidad d de tipos y polimorfismo. Enlace dinámico y uso de la sobreescritura. El operador instanceof La clase Object Diseño de una jerarquía de clases. Diseño de la clase base. Modificador protected. Utilidad de la sobrescritura. 3. Más Herencia en Java: Control de la sobrescritura y regulación de la Herencia El modificador final El modificador abstract Clases interface y herencia múltiple. EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 2 1. Relaciones entre clases: Reutilización del software En la POO, el reúso de código presenta tres formas básicas: Se pueden usar clases de librería (Math, String, ). Se pueden definir nuevos tipos de datos como agregados de tipos más básicos: Relación entre clases TIENE UN(A). Se pueden definir especializaciones de un tipo dado: Relación entre clases ES UN(A). 1. Relaciones entre clases: Reutilización del software Figura Circulo Rectangulo Cuadrado Circulo Figura Raíz de la jerarquía Rectangulo Los tipos relacionados entre sí por particularización o especialización están ordenados parcialmente por inclusión, formando jerarquías Cuadrado EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 3 EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 4

2 2.1 Conceptos básicos de Herencia Herencia: Mecanismo de los lenguajes orientados a objetos que soporta la especialización de clases (relación ES UN(A)). Dada una clase B, se puede definir otra clase D subtipo de B. Se dice que B es la clase base, y D es la derivada. class D extends B { 2.1 Conceptos básicos de herencia Estructura de los objetos de D: Los objetos de D heredan los atributos de B, sin tenerlos que declarar en D. En D se pueden declarar tantos atributos adicionales como sea necesario. Internamente, un objeto de clase D tendrá la misma estructura que un objeto de clase B, salvo los atributos añadidos que se hayan declarado en D. EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 5 EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D Conceptos básicos de Herencia Operaciones constructoras de D: La derivada D debe definir sus propias constructoras, tan sobrecargadas como sea preciso. Una constructora de D puede citar a una constructora de B con el nombre super. Ejemplo: public D(){ super();//por defecto, la constructora // sin parámetros // Inicialización de atributos //particulares de D Si no declara ninguna, se genera la constructora por defecto (sin parámetros) Conceptos básicos de Herencia Resto de métodos de D: D hereda todos los métodos públicos de B. Puede añadir métodos nuevos. Puede sobrescribir los métodos heredados de B para particularizarlos a los objetos de D: o o Se mantiene el perfil o cabecera, Se reescribe el cuerpo según sea necesario EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 7 EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 8

3 2.1. Conceptos básicos de Herencia. Entre tipos primitivos: 2.1. Conceptos básicos de Herencia. Entre tipos primitivos. Ejemplos: byte short int char float double double x= 5.0; int n= x; ERROR: possible loss of precision double x= 5;// x vale 5.0, 5 se promociona a 5.0 int n= (int) x; // n vale 5, 5.0 se restringe a 5 boolean boolean b= true; int n= b; int n= (int) b; ERROR: incompatible types ERROR:inconvertible types EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 9 EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D Conceptos básicos de Herencia. Entre tipos de una jerarquía de clases: Figura 2.1. Conceptos básicos de Herencia POLIMORFISMO: Una variable referencia puede apuntar a objetos de diferentes tipos, siempre que haya compatibilidad. Ejemplos: Circulo Rectangulo Cuadrado ERROR: incompatible types ERROR: inconvertible types Figura f= new Figura(); Circulo c = new Circulo(); Figura f2= c; Circulo c2= f; Circulo c3= (Circulo) new Figura(); c3 = (Circulo) new Rectangulo(); f color tipo f color tipo radio Figura f= new Figura();//Figura f = new Circulo(); //Circulo f= new String( Hola ); ERROR: incompatible types Tipo estático (en compilación) Tipo dinámico (ejecución) EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 11 EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 12

4 2.1 Conceptos básicos de Herencia Tipo estático: Tipo con el que se declara una variable referencia. Tipo dinámico: Tipo del objeto referenciado por la variable en un estado de la ejecución. Deben ser tipos jerárquicamente menores o igual que el tipo estático. Figura f= new Figura();//Figura f = new Circulo(); //Circulo Circulo c2= (Circulo) f; // Circulo Figura f2 = new Rectangulo();// Rectangulo Circulo c2= (Circulo) f2; AL EJECUTAR: ClassCastException 2.1. Conceptos básicos de Herencia Enlace dinámico El tipo dinámico de una expresión determina, en una jerarquía, qué operación dinámica (o de objeto) es la que se aplica al objeto. Supóngase un tipo D derivado de un tipo base B que tiene un cierto metodo, heredado por D. Sea una variable o expresión e de tipo B o compatible: El método que se aplica es el del tipo dinámico de e: B metodo( ) m Si el tipo es D, y D ha sobrescrito el método, se aplica el código sobrescrito. D metodo( ) m e.metodo( ) Si el tipo dinámico es D, y D no tiene código propio para el método (no está sobrescrito), aplica el código del tipo base. EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 13 EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D Conceptos básicos de Herencia. Operador booleano instanceof 2.1. Conceptos básicos de Herencia Ejemplo: Supóngase el siguiente método de la clase Figura Sintaxis: i expresion instanceof T en donde expresion debe ser un objeto, y T un tipo referencia. Devuelve true si al evaluarse expresion su tipo dinámico es compatible con T, y false en caso contrario. EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 15 EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 16

5 2.1. Conceptos básicos de Herencia 2.2. La clase Object Scanner tec= new Scanner(System.in).useLocale(Locale.US); Figura f= Figura.leerFigura(tec); System.out.println( El color es + f.getcolor()); System.out.println( El radio es + f.getradio()); ERROR: getradio not found (no es de Figura, es un añadido a Circulo) Circulo c= (Circulo) f; System.out.println( El radio es + c.getradio()); AL EJECUTAR: Puede dar ClassCastException if ( f instanceof Circulo) { Circulo c= (Circulo) f; // El tipo dinámico de f es //Círculo System.out.println( Su radio es + c.getradio()); Object es una clase del paquete java.lang Toda clase de Java es heredera de Object: t:eslaraízdela jeraquía de clases de Java. Sus objetos están vacíos. Tiene un conjunto de operaciones heredables por cualquier clase: public boolean equals(object o) public String tostring()... EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 17 EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D La clase Object 2.2. La clase Object Ejemplo: Figura hereda todos los métodos de Object Los métodos de Object se pueden sobrescribir EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 19 EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 20

6 2.2. La clase Object 2.3. Diseño de una jerarquía de clases Considérese, por ejemplo, la jerarquía de figuras. Clase base Figura: Sus datos deben ser los que tiene en común cualquier figura: tipo, color Su funcionalidad debe ser la que permita manejar cualquier figura: consultoras y modificadoras, equals, tostring. Clases derivadas, o particularizaciones de Figura (de diferentes formas), Circulo y Rectangulo: Circulo: Un Circulo ES una Figura especial, cuya dimensión viene dada por su radio. Su funcionalidad es la de Figura, más o consultora, modificadora del radio, o cálculo del área, o dibujo de la figura Rectangulo: Un Rectangulo ES una Figura especial, cuya dimensión viene dada por su base y su altura. Su funcionalidad es la de Figura, más o consultora, modificadora de la base y la altura, o cálculo del área, o dibujo de la figura EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 21 EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D Diseño de una jerarquía de clases 2.3. Diseño de una jerarquía de clases Diseño de la clase base. El modificador protected. Es un modificador de visibilidad. El atributo o método protected es privado para las clases que no son de la jerarquía ni del mismo paquete. Diseño de una clase derivada. Constructoras. Dado que toda derivada tiene por defecto la constructora que usa el super() e inicia por defecto sus propios atributos, conviene, por regla general, definir explícitamente sus propios constructores. Ejemplo: Calificar a los atributos de la base como protected permite: o Mantener la privacidad de la estructuración de los datos para las clases ajenas a la jerarquía, o facilitar la implementación del código en las clases derivadas. public Figura() { this.color = Color.black; this.tipo = "indefinido"; public Figura(Color color, String tipo) { this.color = color; this.tipo = tipo; public Circulo() { super(color.black, "circulo"); this.radio = 10.0; public Circulo(Color color, double radio) { super(color, "circulo"); this.radio = radio; EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 23 EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 24

7 2.3. Diseño de una jerarquía de clases 3.1. El modificador final Diseño de una clase derivada. Métodos sobrescritos. La sobrescritura puede ser total o parcial. Ejemplo: // En Figura: public String tostring(){ return "Figura de tipo: " + tipo + " y color " + color; // En Circulo: Sobr. total public String tostring(){ return "Círculo " + color + " de radio " + this.radio; // En Circulo: Sobr. parcial public String tostring(){ return super.tostring()+ ". El radio es "+ this.radio; Es un modificador de Java, que en general denota que un elemento no puede cambiar de estado: 1. Si afecta a una variable, no se puede modificar más allá de su inicialización, es decir, va a ser constante. Ejemplo: En la clase Math de java.lang, las constantes PI, E deben estar declaradas como atributos de la forma: public final static PI = ; public final static E = ; EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 25 EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D El modificador final 2. Si afecta a un método de una clase B, no se puede sobrescribir en ninguna de las derivadas de B Ejemplo: Supóngase que se tuviera //En Figura: public final boolean equals(object x) { Figura f = (Figura) x; return (color.equals(f.color) && tipo.equals(f.tipo)); //En Circulo: ERROR: El método no se puede sobrescribir, es final en Figura public boolean equals(object x) { Figura f = (Figura) x; return (color.equals(f.color) && tipo.equals(f.tipo)) radio==f.radio; EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D El modificador final El modificador final no sólo es útil para prevenir una sobrescritura indeseada. También permite generar código más eficiente. Por ejemplo, supóngase que el método equals se hubiese declarado final en Figura. Entonces: Figura f1=...; Figura f2=...; boolean b= f1.equals(f2); Al compilar la última línea, Java resuelve estáticamente, en compilación, el código de la función (el enlace dinámico no se puede dar). EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 28

8 3.1. El modificador final 3. Si afecta a una clase, afecta a todas sus componentes y la clase no se puede extender. Ejemplo: //En java.lang: public final class String{... ERROR: No se puede heredar de final java.lang.string public class MiCadena extends String{ 3.2. El modificador abstract Es un modificador de métodos y clases. 1. Un método abstracto de una clase B es un método que no se implementa en B. Sintácticamente: public abstract T nombre(lista de parámetros) ; 2. Una clase B que incluya al menos un método abstracto es también una clase abstracta, de modo que: a) En la cabecera de B debe aparecer el modificador abstract. b) No se pueden construir objetos de B. Únicamente se puede usar su constructor, en los constructores de sus derivadas. c) La clases derivadas de B deben implementar los métodos abstractos de B, a menos que a su vez se hayan declarado abstractas. EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 29 EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 30 Ejemplo: 3.2. El modificador abstract public abstract class Figura{... public abstract double area(); En las derivadas de Figura: public class Circulo extends Figura{... public double area(){ return Math.PI*this.radio*this.radio; Si faltase esta implementación, daría el siguiente error de compilación: ERROR: Circulo no es abstracta y no sobrescribe el método abstracto area de Figura No obstante: 3.2. El modificador abstract public abstract class Figura{... public boolean equals(object x) { Figura f = (Figura) x; return (this.color.equals(f.color) && this.tipo.equals(f.tipo) && this.area()== f.area() ); public abstract double area(); 1. Eventualmente, this, f referenciarán círculos, rectángulos y/o cuadrados (dado que no es posible crear objetos de tipo Figura). 2. Por el enlace dinámico, se aplicará el área concreta que corresponda. EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 31 EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 32

9 3.3. Clases interface y herencia múltiple. Una interfaz I es una clase cuyos métodos son todos abstractos: Es una clase que no define la estructura de los objetos, únicamente define su funcionalidad. Sintácticamente: 1. En la cabecera de I debe aparecer interface en lugar de class. 2. Todos los métodos de I son por definición public abstract, y estos modificadores no se deben escribir en sus cabeceras. 3. Los únicos atributos que pueden aparecer en I son constantes, es decir, atributos public final static, aunque Java permite escribir estos modificadores explícitamente o darlos por implícitos. Una clase D derivada de I se dice que implementa a I. Entonces: 1. Sintácticamente se expresa : class D implements I 2. D debe sobrescribir (implementar) todos los métodos de I. 3. DdaestructuraalosobjetosdeIeimplementasusmétodossobre esa estructura Clases interface y herencia múltiple. Herencia múltiple: Es la capacidad de algunos lenguajes OO de definir clases derivadas que extienden a más de una clase base. Una clase D en Java, sólo puede extender a una base B; sin embargo, puede implementar diversas interfaces, por ejemplo: class D extends B implements I, J, K Con ello: Se minimiza los posibles conflictos de nombres entre atributos heredados de diferentes bases, al haber únicamente posible ambigüedad con las constantes. Se evita el conflictos de nombres entre métodos heredados de diferentes bases. EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 33 EDA, ITIS/ITG, ETSInf, UPV. Curso A. Casanova. Grupo 2D 34

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

Agradecimientos. Nota de los autores. 1 Problemas, algoritmos y programas 1

Agradecimientos. 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 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

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

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

PROGRAMACION ORIENTADA A OBJETOS EN C++

PROGRAMACION ORIENTADA A OBJETOS EN C++ PROGRAMACION ORIENTADA A OBJETOS EN C++ 1- INTRODUCCIÓN El lenguaje C++ representa el resultado de los esfuerzos realizados para proporcionar las ventajas de la programación Orientada a Objetos a un lenguaje

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

Variables. Una variable no es más que un nombre simbólico que identifica una dirección de memoria: vs.

Variables. Una variable no es más que un nombre simbólico que identifica una dirección de memoria: vs. Variables Una variable no es más que un nombre simbólico que identifica una dirección de memoria: Suma el contenido de la posición 3001 y la 3002 y lo almacenas en la posición 3003 vs. total = cantidad1

Más detalles

Prácticas de Programación

Prácticas de Programación Prácticas de Programación Tema 1. Introducción al análisis y diseño de programas Tema 2. Clases y objetos Tema 4. Tratamiento de errores Tema 5. Aspectos avanzados de los tipos de datos Tema 6. Modularidad

Más detalles

- Compilar y ejecutar programas en Java - Estructura básica de una clase - El comando javac - El comando java - Introducción al IDE de desarrollo

- Compilar y ejecutar programas en Java - Estructura básica de una clase - El comando javac - El comando java - Introducción al IDE de desarrollo - Introdución a Java - Breve historia de Java - Características del lenguaje Java - Estructura del JDK 1.6 - Documentación del API (JavaDoc) - Instalar y configurar el ambiente de desarrollo - La variable

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

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

Programación orientada a objetos. Resumen de Temas Unidad 6: Polimorfismo y reutilización

Programación orientada a objetos. Resumen de Temas Unidad 6: Polimorfismo y reutilización Programación orientada a objetos Resumen de Temas Unidad 6: Polimorfismo y reutilización 6.1 Concepto de Polimorfismo Polimorfismo quiere decir "un objeto y muchas formas". Esta propiedad permite que un

Más detalles

PROYECTO FIGURAS DIAGRAMA DE FLUJO

PROYECTO FIGURAS DIAGRAMA DE FLUJO FIGURAS JAVA ~ 1 ~ PROYECTO FIGURAS 1. Crear una clase Figura, abstracta 2. Añadirle los métodos vacíos a. CalcularPerimetro() public Devolver double b. Calcular() public Devolver double 3. Crear la clase

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

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 02830. Programación en Java Marzo 2010 Índice 1 Introducción a la POO 2 Herencia y polimorfismo 3 Empaquetado de proyectos

Más detalles

Introducción a la Programación Orientada a Objetos

Introducción a la Programación Orientada a Objetos Introducción a la Programación Orientada a Objetos El paradigma imperativo. En un programa se tienen una serie de variables con las cuales operamos y modificamos mediante sentencias y funciones para producir

Más detalles

RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA

RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA UNED Centro Asociado de Cádiz RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA 1. OBJETOS Cualquier elemento del programa es un objeto. Un programa es un conjunto de objetos que se comunican entre sí

Más detalles

Universidad Autónoma de Tlaxcala. M.C. José Juan Hernández Mora. Primera Sesión

Universidad Autónoma de Tlaxcala. M.C. José Juan Hernández Mora. Primera Sesión Universidad Autónoma de Tlaxcala Introducción al lenguaje JAVA Primera Sesión 1. Introducción a la programación orientada a objeto 2. Introducción al lenguaje Java 3. Primer programa en Java 4. Primer

Más detalles

La Herencia: Teoría (1)

La Herencia: Teoría (1) Introducción a la Herencia Presentación basada en: 1. Construcción de Software Orientado a Objetos. Bertrand Meyer.1998. 2. Java 2., Curso de programación. Fco. Javier Ceballos. Ed. Alfoomega&RA-MA, 2003.

Más detalles

Tema 2. El lenguaje de programación Java (Parte 1)

Tema 2. El lenguaje de programación Java (Parte 1) Programación en Java Tema 2. El lenguaje de programación Java (Parte 1) Luis Rodríguez Baena Facultad de Informática Elementos del lenguaje (I) El juego de caracteres. No utiliza ASCII, sino Unicode de

Más detalles

Programación orientada a objetos. Capítulo 8 Mejora de las estructuras mediante herencia

Programación orientada a objetos. Capítulo 8 Mejora de las estructuras mediante herencia Programación orientada a objetos Capítulo 8 Mejora de las estructuras mediante herencia Clases y objetos de DoME Modelo de objetos Modelo de clases Crítica de la v1 de DoME - Duplicación de código - Las

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

Programación Orientada a Objetos (POO)

Programación Orientada a Objetos (POO) Programación Orientada a Objetos (POO) Introducción La programación orientada a objetos es una técnica de programación en la cual expresamos el código en términos relacionados a como vemos las cosas en

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: Genericidad en Java. Tema 3: Genericidad en Java. Objetivos y Bibliografía. Modelos de Datos Genéricos

Tema 3: Genericidad en Java. Tema 3: Genericidad en Java. Objetivos y Bibliografía. Modelos de Datos Genéricos Tema 3: Genericidad en Java Tema 3: Genericidad en Java Germán Moltó Escuela Técnica Superior de Ingeniería Informática Universidad Politécnica de Valencia Índice general: 1. Definición y Ventajas de la

Más detalles

Tema 2. El lenguaje JAVA

Tema 2. El lenguaje JAVA Tema 2. El lenguaje JAVA Nomenclatura habitual Variables Tipos de variables Tipos primitivos Referencias Arrays Operadores Operadores de Java Precedencia de operadores Sentencias de control Sentencias

Más detalles

Java para programadores

Java para programadores Java para programadores 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 Variables. Tipos

Más detalles

Programación orientada a objetos. Resumen de Temas Unidad 4: Sobrecarga

Programación orientada a objetos. Resumen de Temas Unidad 4: Sobrecarga Programación orientada a objetos Resumen de Temas Unidad 4: Sobrecarga 4.1 Conversión de tipos (1) Conversiones implícitas: La conversión entre tipos primitivos se realizan de modo automático de un tipo

Más detalles

Identificadores, palabras reservadas, tipos de datos, operadores aritméticos y el sistema estándar de salida en Java

Identificadores, palabras reservadas, tipos de datos, operadores aritméticos y el sistema estándar de salida en Java Identificadores, palabras reservadas, tipos de datos, operadores aritméticos y el sistema estándar de salida en Java Identificadores Las variables se utilizan en programación para almacenar temporalmente

Más detalles

Definición y Conversión de datos. Agustín J. González ELO-329

Definición y Conversión de datos. Agustín J. González ELO-329 Definición y Conversión de datos Agustín J. González ELO-329 1 Calificador Const El calificador const previene que un objeto sea modificado con posterioridad a su definición. El objeto calificado como

Más detalles

Conversión entre Tipos

Conversión entre Tipos Conversión entre Tipos La conversión entre tipos permite comparar y copiar valores entre diferentes tipos. En esta lección describiremos como convertir un tipo dado en otro. Conversión en VB y Existen

Más detalles

Programación Orientada a Objetos con Java

Programación Orientada a Objetos con Java Programación Orientada a Objetos con Java M.C. Jorge Eduardo Ibarra Esquer jorgeeie@uabc.mx Sobrecarga de métodos Java permite la definición de dos o más métodos que tengan el mismo nombre, dentro de la

Más detalles

Tema 4 Genericidad en Java. Programación Orientada a Objetos Curso 2013/2014

Tema 4 Genericidad en Java. Programación Orientada a Objetos Curso 2013/2014 Tema 4 Genericidad en Java Programación Orientada a Objetos Curso 2013/2014 Contenido Antecedentes. Genericidad en Java 5 y posterior. Características avanzadas: Genericidad restringida. Tipo puro. Limitaciones

Más detalles

Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial.

Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial. Tipos de Datos Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial. Entrada de datos Procesamientos de datos Salida de resultados Los

Más detalles

Tema 1- Conceptos de Java para Estructuras de Datos

Tema 1- Conceptos de Java para Estructuras de Datos Tema 1- Conceptos de Java para Estructuras de Datos Tema 1- Conceptos de Java para Estructuras de Datos Germán Moltó Escuela Técnica Superior de Ingeniería Informática Universidad Politécnica de Valencia

Más detalles

Programación n Orientada a Objetos Sentencias Java Parte I. Ing. Julio Ernesto Carreño o Vargas MsC.

Programación n Orientada a Objetos Sentencias Java Parte I. Ing. Julio Ernesto Carreño o Vargas MsC. Programación n Orientada a Objetos Sentencias Java Parte I Ing. Julio Ernesto Carreño o Vargas MsC. Variables y expresiones aritméticas Variables Conceptos de Memoria Una variable es un espacio en la memoria

Más detalles

Java Avanzado Facultad de Ingeniería. Escuela de computación.

Java Avanzado Facultad de Ingeniería. Escuela de computación. 2 Java Avanzado Facultad de Ingeniería. Escuela de computación. Java Avanzado. Guía 5 3 Introducción Este manual ha sido elaborado para orientar al estudiante de Java Avanzado en el desarrollo de sus prácticas

Más detalles

Introducción a Java (II) Dr. (c) Noé Alejandro Castro Sánchez

Introducción a Java (II) Dr. (c) Noé Alejandro Castro Sánchez Introducción a Java (II) Dr. (c) Noé Alejandro Castro Sánchez Sintaxis de Java Sintaxis Define las reglas que determinar el uso de palabras clave, operadores y variables para construir y evaluar expresiones.

Más detalles

Universidad de Cantabria corcuerp@unican.es

Universidad de Cantabria corcuerp@unican.es Herencia Pedro Corcuera Dpto. Matemática Aplicada y Ciencias de la Computación Universidad de Cantabria corcuerp@unican.es Objetivos Aprender los conceptos de herencia Comprender la forma de derivar una

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

www.aprendoencasa.com Curso Introducción JAVA Pág.: 1

www.aprendoencasa.com Curso Introducción JAVA Pág.: 1 www.aprendoencasa.com Curso Introducción JAVA Pág.: 1 Introducción Java es un lenguaje basado en la programación orientada a objetos (POO), este tipo de programación va más allá del tipo de programación

Más detalles

Lo que necesitaremos para programar en Java, será un editor de texto o IDE y la JDK.

Lo que necesitaremos para programar en Java, será un editor de texto o IDE y la JDK. Introducción Java surgió en 1991 dentro de la empresa Sun Microsystems como un lenguaje de programación sencillo y universal destinado a electrodomésticos. La reducida potencia de cálculo y memoria de

Más detalles

Tema 1. Conceptos de Java para Estructuras de Datos: interfaces y programación genérica

Tema 1. Conceptos de Java para Estructuras de Datos: interfaces y programación genérica Tema 1. Conceptos de Java para Estructuras de Datos: interfaces y programación genérica Duración: 3 semanas aprox. Índice General: 1. Clases y objetos en Java: el modelo TIENE UN(A) 2. El principio POO

Más detalles

INTRODUCCIóN A LA PROGRAMACIóN APUNTES DE JAVA APUNTES DE JAVA

INTRODUCCIóN A LA PROGRAMACIóN APUNTES DE JAVA APUNTES DE JAVA APUNTES DE JAVA FUNCIONAMIENTO DE UN PROGRAMA Assembler Ensamblador Ejecuta Programador Programa fuente BASIC Interprete Ejecuta C, C++, Pascal Compilador Compila Ejecuta Programa fuente Programa Objeto

Más detalles

INICIACIÓN A LA PROGRAMACIÓN LENGUAJE JAVA

INICIACIÓN A LA PROGRAMACIÓN LENGUAJE JAVA INICIACIÓN A LA PROGRAMACIÓN LENGUAJE JAVA Introducción Qué es programar? Idear y ordenar las acciones necesarias para realizar un proyecto (R.A.E) En nuestro contexto: Resolver problemas, Automatizar

Más detalles

4. Operadores Operador asignación

4. Operadores Operador asignación Programación orientada a objetos con Java 43 4. Operadores Objetivos: a) Describir los operadores (aritméticos, incrementales, de relación, lógicos y de asignación) y los tipos de dato primitivos sobre

Más detalles

POLIMORFISMO "una interfaz, múltiples métodos".

POLIMORFISMO una interfaz, múltiples métodos. "una interfaz, múltiples métodos". 20/02/2007 Polimorfismo 2 Indice Definición y caracteristicas Objetivos. SOBRRESCRITURA-SOBRECARGA SOBRECARGA Clases y métodos abstractos INTERFACES (herencia múltiple)

Más detalles

Java: un rápido repaso

Java: un rápido repaso Desarrollo y ejecución de aplicaciones en Java Java: un rápido repaso public class Hola { public satic void i =1; System.out. Compilador Java Código fuente Franco Guidi Polanco Escuela de Ingeniería Industrial

Más detalles

Principios de Computadoras II

Principios de Computadoras II Departamento de Ingeniería Electrónica y Computadoras Ing. Ricardo Coppo rcoppo@uns.edu.ar Qué es un Objeto? Un objeto es una instancia de una clase Las clases actuán como modelos que permiten la creación

Más detalles

Conceptos más avanzados de Programación Orientada a Objetos

Conceptos más avanzados de Programación Orientada a Objetos Conceptos más avanzados de Programación Orientada a Objetos Programación 2008 Licenciatura de Lingüística y Nuevas Tecnologías Repaso: API de Java API = Application Programming Interface Una API describe

Más detalles

Tema: Tipos de datos y conversiones

Tema: Tipos de datos y conversiones Tema: Tipos de datos y conversiones Objetivos: El propósito de este tema es que el alumno se familiarice con el entorno de desarrollo de Visual C# Express y realice diversos programas en el entorno Consola,

Más detalles

Patrones de Diseño. Patrón estructural Composite. Técnicas de Programación - Curso 2007/08

Patrones de Diseño. Patrón estructural Composite. Técnicas de Programación - Curso 2007/08 Patrones de Diseño Patrón estructural Composite Técnicas de Programación - Curso 2007/08 Propósito Componer objetos en estructuras arbóreas para representar jerarquías todo-parte. Manipular todos los objetos

Más detalles

LABORATORIO ARQUITECTURAS SOFTWARE DE VARIOS NIVELES EN JAVA (I)

LABORATORIO ARQUITECTURAS SOFTWARE DE VARIOS NIVELES EN JAVA (I) LABORATORIO ARQUITECTURAS SOFTWARE DE VARIOS NIVELES EN JAVA (I) SEPARACIÓN DEL NIVEL DE PRESENTACIÓN Y LÓGICA DE NEGOCIO MEDIANTE EL USO DE INTERFACES JAVA 1. OBJETIVO Los objetivos de este laboratorio

Más detalles

Conceptos de Programación Orientada a Objetos

Conceptos de Programación Orientada a Objetos Paradigmas de programación Prog. orientada a objetos Conceptos de Programación Orientada a Objetos Abstracción de Programación estructurada Programación imperativa 2 Programación estructurada (I) Programación

Más detalles

Unidad II. Fundamentos de programación en Java. Ing. José Luis Llamas Cárdenas

Unidad II. Fundamentos de programación en Java. Ing. José Luis Llamas Cárdenas Unidad II Fundamentos de programación en Java Ing. José Luis Llamas Cárdenas En java para poder escribir se emplea el objeto System.out, t pero para leer del teclado es necesario emplear System.in Et Este

Más detalles

2.2 Nombres, Ligado y Ámbito

2.2 Nombres, Ligado y Ámbito 2.2 Nombres, Ligado y Ámbito Ligado estático y dinámico, reglas de ámbito y prueba de tipos. Conceptos Nombres e Identificadores Variables Tipos Ámbito Constantes Nombres Identificador que designa en el

Más detalles

Herencia e Interfaces

Herencia e Interfaces Herencia Introducción En C# cualquier dato es un objeto porque todos los tipos derivan implícitamente de este tipo, y heredan los métodos y campos definidos en dicha clase. Cada nuevo tipo tiene todo lo

Más detalles

LABORATORIO ARQUITECTURAS SOFTWARE DE VARIOS NIVELES EN JAVA (I)

LABORATORIO ARQUITECTURAS SOFTWARE DE VARIOS NIVELES EN JAVA (I) LABORATORIO ARQUITECTURAS SOFTWARE DE VARIOS NIVELES EN JAVA (I) SEPARACIÓN DEL NIVEL DE PRESENTACIÓN Y LÓGICA DE NEGOCIO MEDIANTE EL USO DE INTERFACES JAVA 1. OBJETIVO Los objetivos de este laboratorio

Más detalles

Clases. Java: Clases y Objetos. Clases. Clases. Modificadores de clase. Definición de una clase. Cada objeto es un ejemplar de una clase

Clases. Java: Clases y Objetos. Clases. Clases. Modificadores de clase. Definición de una clase. Cada objeto es un ejemplar de una clase Java: Clases y Objetos Clases La unidad fundamental de programación en Java es la clase Un programa Java está formado por un conjunto de clases Una clase es una plantilla que describe un conjunto de objetos

Más detalles

Introducción al lenguaje JAVA

Introducción al lenguaje JAVA Universidad Autónoma de Tlaxcala Introducción al lenguaje JAVA M.C.. José Juan Hernández ndez Mora Segunda Sesión 1. Arreglos 2. Matrices 3. Clases en Java 4. Clases de Usuario en Java 5. Objetos definidos

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 Sentencias Java Parte I Ing. Julio Ernesto Carreño Vargas MsC.

Programación Orientada a Objetos Sentencias Java Parte I Ing. Julio Ernesto Carreño Vargas MsC. Sentencias Java Parte I Ing. Julio Ernesto Carreño Vargas MsC. Variables Conceptos de Memoria Una variable es un espacio en la memoria del PC Cada variable tiene un nombre, un tipo, un tamaño y un valor

Más detalles

INDICE DEL CURSO APRENDER PROGRAMACIÓN JAVA DESDE CERO. PROGRAMACIÓN ORIENTADA A OBJETOS (CU00601B)

INDICE DEL CURSO APRENDER PROGRAMACIÓN JAVA DESDE CERO. PROGRAMACIÓN ORIENTADA A OBJETOS (CU00601B) APRENDERAPROGRAMAR.COM INDICE DEL CURSO APRENDER PROGRAMACIÓN JAVA DESDE CERO. PROGRAMACIÓN ORIENTADA A OBJETOS (CU00601B) Sección: Cursos Categoría: Curso Aprender programación Java desde cero Fecha revisión:

Más detalles

4.1 - OBJETOS Y CLASES

4.1 - OBJETOS Y CLASES 4.- Elementos relacionados con la Orientación a Objeto 4.1 - OBJETOS Y CLASES Intoducción Alan Kay (Smalltalk) Todo es un objeto. Un programa es un grupo de objetos diciendose unos a otros qué deben hacer

Más detalles

Estructura de las Aplicaciones Orientadas a Objetos Herencia de clases

Estructura de las Aplicaciones Orientadas a Objetos Herencia de clases Estructura de las Aplicaciones Orientadas a Objetos Herencia de clases Programación Orientada a Objetos Facultad de Informática Dep. Ingeniería del Software e Inteligencia Artificial Universidad Complutense

Más detalles

Programación Orientada a Objetos en Java

Programación Orientada a Objetos en Java Programación Orientada a Objetos en Java Curso 2006-2007 Tema 3 Clases y Objetos Gonzalo Méndez Pozo Dpto. de Ingeniería de Software e Inteligencia Artificial Universidad Complutense de Madrid Clases y

Más detalles

Introducción a la Orientación a Objetos

Introducción a la Orientación a Objetos Introducción a la Orientación a Objetos Breve historia de la OO 1960s. Simula incorpora características propias de la OO. 1970s. Smalltalk. Lenguaje totalmente OO. 1990s. Boom de la OO. 2000-Hoy. Época

Más detalles

CONCEPTOS BASICOS DEL LENGUAJE JAVA

CONCEPTOS BASICOS DEL LENGUAJE JAVA CONCEPTOS BASICOS DEL LENGUAJE JAVA NOMENCLATURA GENERAL En Java se distinguen las letras mayúsculas y minúsculas. Las reglas del lenguaje respecto a los nombres de variables son muy amplias y permiten

Más detalles

Objetivo de aprendizaje del tema

Objetivo de aprendizaje del tema Computación II Tema 3. Identificadores, palabras clave y tipos de datos Objetivo de aprendizaje del tema Al finalizar el tema serás capaz de: Distinguir i entre modificadores d válidos y no válidos. Enumerar

Más detalles

Java Básico. Métodos estáticos

Java Básico. Métodos estáticos Java Básico Métodos estáticos Agregando métodos estáticos En un programa es deseable separar los algoritmos y asignarles un nombre. Cada algoritmo separado será llamado método. Cuando no necesitamos crear

Más detalles

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles. Sesión 1: Introducción al Lenguaje Java

Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles. Sesión 1: Introducción al Lenguaje Java Lenguaje Java Sesión 1: Introducción al Lenguaje Java 2012-2013 Depto. Ciencia de la Computación e IA Índice Introducción a Java Conceptos de POO Elementos de un programa Java Herencia, interfaces, polimorfismo

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

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

15. Parámetros o argumentos

15. Parámetros o argumentos Programación orientada a objetos con Java 161 15. Parámetros o argumentos Objetivos: a) Profundizar en el concepto de parámetro de una clase e indicar su mecanismo de funcionamiento. b) Interpretar el

Más detalles

CONTENIDOS. La herencia permite: - Adoptar automáticamente características ya implementadas. Ahorro de tiempo y esfuerzo

CONTENIDOS. La herencia permite: - Adoptar automáticamente características ya implementadas. Ahorro de tiempo y esfuerzo CONTENIDOS 1. Introducción 2. Cuándo se aplica el mecanismo de herencia 3. Un ejemplo de herencia 4. Terminología 5. Clase derivada. Creación de una clase derivada 6. Miembros que no se heredan automáticamente

Más detalles

Ficha de Aprendizaje N 13

Ficha de Aprendizaje N 13 Ficha de Aprendizaje N 13 Curso: Lógica y lenguaje de programación Tema: Fundamentos de programación Duración: 2 horas pedagógicas Logros de aprendizaje Identifica los diferentes tipos de operadores que

Más detalles

Práctica 3 mtp. metodoloxía e tecnoloxía da programación. Presentar detalles básicos sobre la sintaxis del lenguaje de programación Java.

Práctica 3 mtp. metodoloxía e tecnoloxía da programación. Presentar detalles básicos sobre la sintaxis del lenguaje de programación Java. Práctica 3 mtp metodoloxía e tecnoloxía da programación Objetivos: Duración: Presentar detalles básicos sobre la sintaxis del lenguaje de programación Java. 1 semana 1.- Identificadores Los identificadores

Más detalles

PARA QUÉ SIRVEN LAS INTERFACES JAVA. IMPLEMENTAR UNA INTERFAZ DEL API. VENTAJAS. EJEMPLOS BÁSICOS. (CU00697B)

PARA QUÉ SIRVEN LAS INTERFACES JAVA. IMPLEMENTAR UNA INTERFAZ DEL API. VENTAJAS. EJEMPLOS BÁSICOS. (CU00697B) APRENDERAPROGRAMAR.COM PARA QUÉ SIRVEN LAS INTERFACES JAVA. IMPLEMENTAR UNA INTERFAZ DEL API. VENTAJAS. EJEMPLOS BÁSICOS. (CU00697B) Sección: Cursos Categoría: Curso Aprender programación Java desde cero

Más detalles

StringBuffer, Math y Wrapper

StringBuffer, Math y Wrapper Clases System, String, StringBuffer, Math y Wrapper FJP Unidad 6 Clase System Ubicación: java.lang.system Funcionalidad principal: acceder a los dispositivos del sistema operativo de bajo nivel entrada

Más detalles

Metodología y Tecnología de la Programación

Metodología y Tecnología de la Programación Metodología y Tecnología de la Programación Curso 2008/09 Tema 7 Tipos de Datos Abstractos Temario 7.1 Concepto de Tipo de Datos Abstracto 7.2 Clasificación de Tipos de Datos Abstractos 7.3 Especificación

Más detalles

Práctica 4: Herencia. Objetivos:

Práctica 4: Herencia. Objetivos: Práctica 4: Herencia Objetivos: Como se implementa la herencia en Java (superclase - clase descendiente). Utilizar super. Redefinición de métodos Clase Object Clase System Clases abstractas 1. Herencia.

Más detalles

GUÍA DE ESTILO EN JAVA

GUÍA DE ESTILO EN JAVA GUÍA DE ESTILO EN JAVA Formato de líneas 1. No usar más de 80 caracteres por línea (imagen de tarjeta). De esta forma se pueden visualizar las líneas completas con un editor de texto o en una hoja impresa

Más detalles

Descripción y Contenido del Curso. Programación C++ Capacity Academy.

Descripción y Contenido del Curso. Programación C++ Capacity Academy. Descripción y Contenido del Curso Programación C++ Capacity Academy Educación en Tecnología de la Información Online, Efectiva y Garantizada Qué aprenderá si toma este Curso? En este curso aprenderás todo

Más detalles

POO en Java IV: Herencia (Parte 1)

POO en Java IV: Herencia (Parte 1) Herencia POO en Java IV: Herencia (Parte 1) Escuela de Ingeniería Industrial Pontificia Universidad Católica de Valparaíso, Chile fguidi@ucv.cl Es la derivación de una clase a partir de otra existente.

Más detalles

Orientación a Objetos en Java

Orientación a Objetos en Java Orientación a Objetos en Java I. Programación Basada en objetos II. Programación orientada a objetos M. Carmen Fernández Panadero Raquel M. Crespo García Contenidos Polimorfismo

Más detalles

Expresiones y sentencias

Expresiones y sentencias Expresiones y sentencias Expresión Construcción (combinación de tokens) que se evalúa para devolver un valor. Sentencia Representación de una acción o una secuencia de acciones. En Java, todas las sentencias

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

Tema 3: Herencia en Java. Programación Orientada a Objetos Curso 2009/2010 Begoña Moros Valle

Tema 3: Herencia en Java. Programación Orientada a Objetos Curso 2009/2010 Begoña Moros Valle Tema 3: Herencia en Java Programación Orientada a Objetos Curso 2009/2010 Begoña Moros Valle Índice Introducción Herencia y creación Herencia y Ocultamiento de la Información Redefinición de características

Más detalles

5. Sentencias selectivas o condicionales

5. Sentencias selectivas o condicionales 60 A. García-Beltrán y J.M. Arranz 5. Sentencias selectivas o condicionales Objetivos: a) Describir el funcionamiento de las sentencias selectivas o condicionales (if-else y switch) b) Interpretar el resultado

Más detalles

Patrones de diseño. Patrón básico Handler. Técnicas de Programación - Curso 2008/09 (Esther Guerra Sánchez)

Patrones de diseño. Patrón básico Handler. Técnicas de Programación - Curso 2008/09 (Esther Guerra Sánchez) Patrones de diseño Patrón básico Handler Técnicas de Programación - Curso 2008/09 (Esther Guerra Sánchez) Patrones de diseño Introducción Objetivos: Diseño específico para el problema, pero general para

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

2. Estructura de un programa en Java

2. Estructura de un programa en Java 24 A. García-Beltrán y J.M. Arranz 2. Estructura de un programa en Java Objetivos: a) Describir la estructura del código fuente de una aplicación Java b) Presentar los conceptos de comentario y de identificador

Más detalles

JAVA -INTRODUCCIÓN AL LENGUAJE

JAVA -INTRODUCCIÓN AL LENGUAJE JAVA -INTRODUCCIÓN AL LENGUAJE Temario 1 -Introducción al lenguaje Java 2 - Introducción a Eclipse 3 - Clases e Inicialización 4 Colecciones 5 - Creando nuestras clases de Java 6- Clases, Métodos y Variables

Más detalles

Programa Java. El lenguaje de programación Java. Comentarios. Programa Java. Palabras reservadas. Identificadores

Programa Java. El lenguaje de programación Java. Comentarios. Programa Java. Palabras reservadas. Identificadores El lenguaje de programación Java Programa Java Un programa Java está formado por un conjunto de clases que interactúan entre sí La clase es la unidad básica de programación La ejecución depende de la clase

Más detalles

Tema 2. Técnicas básicas de POO. Técnicas de Programación - Curso 2007/08

Tema 2. Técnicas básicas de POO. Técnicas de Programación - Curso 2007/08 Tema 2 Técnicas básicas de POO Técnicas de Programación - Curso 2007/08 Contenido Principios de POO Encapsulación Herencia Polimorfismo Ejemplos Técnicas básicas Delegación Uso de interfaces Interfaces

Más detalles

Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main.

Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main. LENGUAJE C CARACTERISTICAS DEL LENGUAJE 'C' El lenguaje 'C' se conoce como un lenguaje compilado. Existen dos tipos de lenguaje: interpretados y compilados. Los interpretados son aquellos que necesitan

Más detalles

Java Avanzado. Guía 1. Java Avanzado Facultad de Ingeniería. Escuela de computación.

Java Avanzado. Guía 1. Java Avanzado Facultad de Ingeniería. Escuela de computación. Java Avanzado. Guía 1 Java Avanzado Facultad de Ingeniería. Escuela de computación. Java Avanzado. Guía 2 Introducción Este manual ha sido elaborado para orientar al estudiante de Java Avanzado en el desarrollo

Más detalles

Principios de Computadoras II

Principios de Computadoras II Departamento de Ingeniería Electrónica y Computadoras Operadores y Expresiones rcoppo@uns.edu.ar Primer programa en Java 2 Comentarios en Java Comentario tradicional (multi-línea) Comentario de línea Comentario

Más detalles

C.I.F.: B Inscrita en el Registro Mercantil de Madrid, Tomo Libro 0, Folio 135, Sección 8. Hoja M Inscripción 1ª

C.I.F.: B Inscrita en el Registro Mercantil de Madrid, Tomo Libro 0, Folio 135, Sección 8. Hoja M Inscripción 1ª INTRODUCCIÓN A JAVA QUÉ ES JAVA Introducción ORGANIZACIÓN JME (Mobile / Wireless) JSE (Core / Desktop) JEE (Enterprise / Server) LA HISTORIA El comienzo Aparición de Internet Por qué el nombre JAVA DESARROLLO,

Más detalles