Programación Avanzada para Sistemas de Telecomunicación. Objetos y clases. J.C. Cruellas. Objetos y clases

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

Download "Programación Avanzada para Sistemas de Telecomunicación. Objetos y clases. J.C. Cruellas. Objetos y clases"

Transcripción

1 Programación Avanzada para Sistemas de Telecomunicación Objetos y clases Juan Carlos Cruellas Objetos y clases Concepto de objeto. Concepto de clase. Clases, objetos y programas. Clases en Java. Objetos en Java. Creación de objetos (instanciación de clases). Acceso a miembros de objetos. Modificadores. static final

2 Concepto de objeto Definición de objeto:. Entidad que contiene unos datos particulares (DATOS MIEMBRO) y unas operaciones concretas sobre ellos (FUNCIONES MIEMBRO). Elementos a resaltar: Un objeto contiene información: DATOS MIEMBRO (también llamados atributos). En C los struct también podían contener información de diferente tipo (miembros de la estructura). Un objeto además (y ahí radica la gran diferencia con los tipos de datos estructurados de C), posee operaciones que manipulan los valores de los datos miembro: FUNCIONES MIEMBRO (métodos). Concepto de objeto Struct_0 Struct_1 Struct_2 No orientación a objetos Función_0 Función_1 Función_2 Orientación a objetos Objeto_0 dato_0 dato_1 función_0 función_1 función_2

3 Concepto de clase Una clase es una abstracción que describe un conjunto de objetos que poseen los mismos datos miembro (los datos miembro de cada objeto particular pueden tener diferentes valores), las mismas funciones miembro (idéntico código) y la misma semántica. A un objeto de una clase también se le denomina instancia de una clase. Un ejemplo de clase: Aulario: cualquier edificio con aulas. Coordenada de tablero de ajedrez: un par de enteros del 1 al 8. Concepto de clase Un ejemplo de objeto: El aulario A6. Uno de los aularios del campus. La coordenada (1,3).

4 Clases, objetos y programas Un programa escrito en un lenguaje orientado a objetos contiene instrucciones que: Definen clases. Crean objetos (instancian clases). Los hacen interaccionar con otros objetos (invocando a funciones miembro de otros objetos). Destruyen objetos cuando no son necesarios. Clases, objetos y programas En programación orientada a objetos, clases y objetos pasan a ser elementos en torno a los cuales giran todas las actividades propias del análisis, el diseño, la implementación y las pruebas. Algunas tareas importantes del proceso de desarrollo de software : Narración detallada del funcionamiento del código a desarrollar. Identificación de las clases que formarán parte del programa

5 Clases, objetos y programas Identificación, para cada clase, de sus datos miembro. Identificación, para cada clase, de sus funciones miembro. Propuesta de secuencia temporal de interacciones entre objetos de las clases (invocaciones de funciones de objetos por parte de funciones de otros objetos). Clases en Java: sintaxis de definición de clases public: modificador de acceso. Indica desde qué partes del programa puede accederse a objetos de esta clase. class: clave que indica que lo que se define a continuación es una clase. Coordinate: nombre de la clase. Elegida por usuario. Regla: comienza por MAYÚSCULA. public class Coordinate{ {: indica el comienzo de la definición de la clase. : indica el final de la definición de la clase.

6 Clases en Java: sintaxis definición de datos miembro protected: modificador de acceso. Indica desde qué partes del programa puede accederse los datos miembros. int: indica el tipo de la información almacenada en los datos miembros. row, col: nombres de los datos miembros. Elegidos por usuario. Regla: comienza por minúscula. public class Coordinate{ protected int row,col ; Clases en Java: sintaxis definición de datos miembro Java reutiliza la sintaxis de declaración de variables de C para la definición de datos miembro, anteponiendo el modificador de acceso. Algunos tipos primitivos predefinidos de Java (se comentarán más tarde): int, float, double, char, unsigned int, long, boolean

7 Clases en Java: sintaxis definición de funciones miembro public class Coordinate{ protected int row,col ; public int getrow(){ return this.row ; Java reutiliza la sintaxis de definición de funciones de C para la definición de funciones miembro, anteponiendo el modificador de acceso. Clases en Java: sintaxis definición de funciones miembro La función anterior devuelve el valor del dato miembro row del objeto. La definición de una función (salvo algunas excepciones) DEBE INDICAR el valor o clase de objeto devuelto entre el modificador de acceso y el nombre de la función. Si una función no devuelve valor alguno, se usará la partícula void.

8 Clases en Java: sintaxis definición de funciones miembro Las funciones java también pueden devolver objetos. Desde las funciones miembro puede accederse a los datos miembro de dos formas: 1. Escribiendo su nombre sin más (return row ;) 2. Anteponiendo a su nombre la clave this (return this.row ;). La opción 2 elimina potenciales problemas si en la función aparece una variable o un argumento con el mismo nombre del dato miembro. Clases en Java. Funciones especiales: constructores Toda clase Java dispone de unas funciones con un cometido muy especial: ASIGNAR VALORES INICIALES A LOS DATOS MIEMBRO. Estas funciones especiales son LOS CONSTRUCTORES. CARACTERÍSTICAS: Una clase puede disponer de VARIOS CONSTRUCTORES. Ningún constructor devuelve nada. Son las únicas funciones en las que no se indica el valor u objeto devuelto. Todos los constructores tienen el mismo nombre: el NOMBRE DE LA CLASE.

9 Clases en Java. Funciones especiales: constructores Todos los constructores deben diferenciarse entre sí en la lista de argumentos. NOTA: Esta es una regla general en Java. Una clase puede tener VARIAS FUNCIONES CON EL MISMO NOMBRE SIEMPRE Y CUANDO TENGAN DIFERENTES LISTAS DE ARGUMENTOS. En su versión más simple, el código de los constructores serán instrucciones de asignación de valores a los datos miembro. Clases en Java. Funciones especiales: constructores Constructor sin argumentos. También conocido como constructor por defecto: Tiene la lista de argumentos vacía. Solo puede haber uno por clase. Se usa en aquellas ocasiones en las que el diseñador sabe que los datos miembro de algunos objetos de la clase deben tener unos valores iniciales constantes y conocidos de antemano. En su versión más simple: sentencias de asignación a valores constantes.

10 Clases en Java. Funciones especiales: constructores public Coordinate(){ this.row = 1 ; this.col = 1 ; El constructor por defecto asigna el valor 1 a los datos row y col. Clases en Java. Funciones especiales: constructores Si una clase no dispone de un constructor por defecto, el compilador Java construye uno automáticamente. Dicho constructor asigna los valores a los datos en función de su tipo: Datos numéricos: el valor 0. Datos booleanos: el valor false. Datos carácter: el carácter vacío. En el caso anterior, si el diseñador no lo hubiera añadido, el compilador de Java crearía un constructor que asignaría los valores 0 a ambos. PERO ESOS VALORES SON INCORRECTOS, ya que hemos dicho que las coordenadas del tablero de ajedrez van de 1 a 8!!!..

11 Clases en Java. Funciones especiales: constructores public class Coordinate{ protected int row,col ; public Coordinate(){ this.row = 1 ; this.col = 1 ; public int getrow(){ return this.row ; Clases en Java. Funciones especiales: constructores Constructores con argumentos. Una clase puede disponer de VARIOS constructores con argumentos siempre y cuando sus listas de argumentos sean distintas. Todos ellos tienen algún argumento. Permiten al diseñador crear objetos asignando en tiempo de ejecución los valores iniciales de sus datos miembros. En su versión más simple: sentencias de asignación a valores de los argumentos. En ellos aparece por primera vez el problema del ámbito de valores permitidos para cada uno de los datos miembro (COHERENCIA de los valores de los datos miembro).

12 Clases en Java. Funciones especiales: constructores Versión no tolerante a fallos, y por tanto incorrecta: public Coordinate(int r,int c){ this.row = r ; this.col = c ; El constructor asigna a row el valor que tenga el argumento r y a col el valor que tenga c. Sin embargo, este código NO es correcto. Por qué? Clases en Java. Funciones especiales: constructores En caso de que r tuviera un valor 9, el constructor CREARÍA UNA COORDENADA CON UN VALOR DE FILA 9, COSA QUE NO PUEDE SUCEDER por la propia definición de la clase coordenada de ajedrez!!!. El constructor con argumentos, DEBE ASEGURAR que el valor de cada uno de los datos miembros pertenezca al ámbito definido por la propia clase. Si el valor del argumento correspondiente no pertenece a dicho ámbito, el constructor NO DEBE ASIGNAR VALORES INICIALES Y DEBE SEÑALAR LA EXISTENCIA DE UNA SITUACIÓN ANÓMALA.

13 Clases en Java. Funciones especiales: constructores Antes de asignar valores a los datos miembro, el constructor con argumento COMPRUEBA la coherencia de los valores de los argumentos mediante el CÓDIGO DE GUARDA, que está al comienzo de la función y consta de: Una o varias sentencias condicionales. Instrucciones especiales para señalar situaciones anómalas que evitan la ejecución normal de la función si alguna de las condiciones de coherencia de valores no se cumple. Las asignaciones de valores a los datos miembro aparecen después del código de guarda. Clases en Java. Funciones especiales: constructores public Coordinate(int r,int c){ if(r<1 r>8 c<1 c>8) throw new IllegalArgumentException("COORDINATE") ; this.row = r ; this.col = c ; La sentencia if() comprueba la corrección semántica de los valores de los argumentos. La sentencia que comienza con throw devuelve el control a la función invocante. Si hay algún valor incorrecto, las dos últimas sentencias NO se ejecutan y NO se asigna valor a los datos miembros.

14 Clases en Java. Funciones especiales: constructores Ventajas de señalar errores y no asignar valores: No se permite continuar la ejecución con valores erróneos. Ello solo llevaría a perder tiempo. En su lugar, tan pronto como se detecta un valor erróneo se señala. Si hay un valor erróneo es porque antes de invocar al constructor SE HA REALIZADO UN CÁLCULO ERRÓNEO. Que sea el constructor quien señale el error FACILITA ENORMEMENTE LA DEPURACIÓN DEL RESTO DEL PROGRAMA!!. En lugar de esperar a finalizar la ejecución, el diseñador puede pasar directamente a depurar el código. Clases en Java. Funciones especiales: constructores public class Coordinate{ protected int row,col ; public Coordinate(){ this.row = 1 ; this.col = 1 ; public Coordinate(int r,int c){ if(r<1 r>8 c<1 c>8) throw new IllegalArgumentException("COORDINATE") ; this.row = r ; this.col = c ; public int getrow(){ return this.row ;

15 Clases en Java. Funciones especiales: asignación a e inspección de valores de datos miembro Junto con los constructores hay un conjunto de funciones que prácticamente todas las clases tienen: las de acceso a los valores de los datos miembro. Pueden ser de dos tipos: Acceso para inspección de valores (operaciones getxxx). Acceso para asignación de valores (operaciones setxxx). En principio, conviene que haya una de cada por cada dato miembro de la clase. Clases en Java. Funciones especiales: asignación a e inspección de valores de datos miembro Operaciones de acceso para inspección de valores: Práctica recomendable: que haya una por dato miembro. Es recomendable que sus nombres sean getxxx, donde XXX debería ser el nombre del dato miembro asociado: Los nombres de las funciones de inspección para la clase Coordinate serían: getrow y getcol. NO tienen lista de argumentos. Tienen un único cometido: devolver el valor del correspondiente dato miembro. Generalmente una sola instrucción return.

16 Clases en Java. Funciones especiales: asignación a e inspección de valores de datos miembro public int getrow(){ return this.row ; public int getcol(){ return this.col ; Cada función permite inspeccionar el valor de uno de los datos miembro. Clases en Java. Funciones especiales: asignación a e inspección de valores de datos miembro Operaciones de acceso para asignación de valores: Práctica recomendable: que haya una por dato miembro. Es recomendable que sus nombres sean setxxx, donde XXX debería ser el nombre del dato miembro asociado: Los nombres de las funciones de inspección para la clase Coordinate serían: setrow y setcol. Argumento: el valor a asignar al dato miembro en cuestión. No devuelven valor alguno (void).

17 Clases en Java. Funciones especiales: asignación a e inspección de valores de datos miembro Tareas: En algunas ocasiones comprobar que el valor a asignar es semánticamente correcto. Código de guarda. Si el valor es semánticamente correcto, asignarlo al dato miembro. Si no, señalar la presencia de una situación anómala y NO asignar el valor. Clases en Java. Funciones especiales: asignación a e inspección de valores de datos miembro public void setrow(int r){ if(r<1 r>8) throw new IllegalArgumentException( ROW") ; this.row = r ; public void setcol(int c){ if(c<1 c>8) throw new IllegalArgumentException( COLUMN") ; this.col = c ; Cada función permite asignar un valor a cada función.

18 Clases en Java. public class Coordinate{ protected int row,col ; public Coordinate(){ this.row = 1 ; this.col = 1 ; public Coordinate(int r,int c){ if(r<1 r>8 c<1 c>8) throw new IllegalArgumentException("COORDINATE") ; this.row = r ; this.col = c ; public int getrow(){ return this.row ; public int getcol(){ return this.col ; Clases en Java. public void setrow(int r){ if(r<1 r>8) throw new IllegalArgumentException( ROW") ; this.row = r ; public void setcol(int c){ if(c<1 c>8) throw new IllegalArgumentException( COLUMN") ; this.col = c ; //Asigna valores a los dos datos miembros. public void set(int r,int c){ if(r<1 r>8 c<1 c>8) throw new IllegalArgumentException("COORDINATE") ; this.row = r ; this.col = c ;

19 Objetos en Java: creación de objetos public class MainClass{ public static void main(string [] args){ Coordinate c0 = new Coordinate() ; La creación de un objeto se hace en dos pasos: Se invoca a un operador especial: new. Se invoca a un constructor. Objetos en Java: creación de objetos ATENCION: main() es la función principal de toda aplicación Java. Java no admite funciones fuera de las clases. Por tanto, main() debe ser una función miembro de una clase. Su sintaxis es EXACTAMENTE la indicada. Si se obvia alguna parte, el compilador de Java no la identificará como la función principal. Si al intentar ejecutar el programa, la máquina virtual no encuentra ninguna en ningún archivo, lanza un error.

20 Objetos en Java: creación de objetos Operador new: Reserva un bloque de memoria del tamaño adecuado para contener un objeto de la clase pertinente. Gestión dinámica de memoria: el bloque se asigna en tiempo de ejecución, no en tiempo de compilación. Devuelve la dirección de comienzo del bloque de memoria. Constructor: Asigna valores iniciales a los datos miembro del objeto creado en memoria. Objetos en Java: creación de objetos Comentarios al código: Coordinate c0 = new Coordinate() ; El operador new está a la derecha de una asignación new reserva un bloque de memoria y devuelve una dirección. Esa dirección se asigna a una variable (c0). En consecuencia c0 es una variable CUYO VALOR ES UNA DIRECCIÓN a un bloque de memoria que contiene un objeto de clase Coordinate (terminología Java: una REFERENCIA a un objeto)!!!.

21 Objetos en Java: creación de objetos 1. c0 inicialmente contiene una dirección de valor null (no apunta a ningún sitio) 2. new busca un bloque libre del tamaño adecuado y cuando lo encuentra, lo reserva. 3. El constructor asigna valores iniciales a los datos miembro. 4. new devuelve la dirección del bloque. Esta se asigna a c0 que queda apuntando al objeto recién creado 1 c0 2 4 c0 3 row=1 col=1 Objetos en Java: acceso a miembros Acceder a una función miembro de un objeto significa invocar a esa función, lanzar su ejecución, previo paso de los argumentos pertinentes. Acceder a un dato miembro de un objeto significa situarse en la posición de memoria en la que se almacena su valor.

22 Objetos en Java: acceso a miembros public class MainClass{ public static void main(string [] args){ Coordinate c0 = new Coordinate() ; c0.setrow(1) ; Sintáxis de acceso a un miembro de un objeto: nombre de objeto. nombre de miembro Objetos en Java: acceso a miembros Los modificadores de acceso ponen restricciones a los lugares del programa desde los cuales pueden realizarse los accesos mencionados. El modificador public indica que puede accederse al miembro DESDE CUALQUIER PUNTO DEL PROGRAMA. La sentencia c0.setrow(1); es correcta: la función setrow() de Coordinate es una función pública.

23 Objetos en Java: acceso a miembros public class MainClass{ public static void main(string [] args){ Coordinate c0 = new Coordinate() ; c0.setrow(1) ; // correcto: setrow()es public c0.row = 1 ; /*error!!: row es un dato protegido. No se compilará.*/ El acceso al dato miembro row desde una función que no es de la clase Coordinate ESTÁ PROHIBIDO. El compilador avisa de que c0.row = 1; es incorrecta. Objetos en Java: acceso a miembros. public class Coordinate{ protected int row,col ; public Coordinate(){ this.row = 1 ; this.col = 1 ; public Coordinate(int r,int c){ if(r<1 r>8 c<1 c>8) throw new IllegalArgumentException("COORDINATE") ; this.row = r ; /* CORRECTO: dato protegido PERO acceso desde función de la propia clase */ this.col = c ; // IDEM Al dato protegido puede accederse desde cualquier función de la propia clase. Por eso this.row = r; es correcta.

24 Objetos en Java: acceso a miembros. Modificador de acceso Acceso permitido desde public protected private Cualquier punto del programa Desde funciones de la misma clase. Desde funciones de clases derivadas de la clase. Desde funciones de la misma clase. Desde funciones de clases del mismo package. Desde funciones de la misma clase. Modificadores. Además de los modificadores de acceso existen otros modificadores que pueden aplicarse a los miembros de una clase: static y final. Cada uno de ellos puede aplicarse a un dato miembro o a una función.

25 Modificadores: static (miembros de clase) Cuando a un miembro de una clase se le antepone el modificador static se fuerza a que TODOS LOS OBJETOS DE DICHA CLASE COMPARTAN DICHO MIEMBRO; esto es, el miembro NO es un miembro de objeto sino de clase. El acceso a estos miembros NO se realiza a través de ningún objeto, sino a través de la propia clase. DATO MIEMBRO ESTATICO: Todos los objetos de esa clase COMPARTEN EL DATO MIEMBRO. SOLO HAY UN DATO EN MEMORIA: EL CORRESPONDIENTE A LA CLASE. Modificadores: static (miembros de clase) Usos: Atributo con un valor común para todos los objetos de esa clase. Gestión de constantes (junto con el modificador final). Puede accederse a estos datos INCLUSO SIN HABER CREADO NINGUN OBJETO DE LA CLASE SINTAXIS DE DEFINICIÓN: public static int a ;

26 Modificadores: static (miembros de clase d2 = v2 O 1 O 2 d0 = v10 d1 = v11 El dato estático d2 es COMPARTIDO por todos los objetos. d0 = v20 d1 = v21 Modificadores: static (miembros de clase) FUNCIÓN ESTÁTICA DE UNA CLASE. Conceptualmente solo hay una copia de la función. La función puede invocarse INCLUSO SIN HABER CREADO NINGUN OBJETO DE LA CLASE. Usos: Construcción de librerías de funciones. Si se crea una clase con todas las funciones estáticas NO será necesario crear ningún objeto de esa clase antes de invocar a cualquiera de ellas. EJEMPLO: la clase Math de Java solo tiene funciones matemáticas estáticas (no hay dato miembro alguno).

27 Modificadores: static (miembros de clase) Sintaxis de definición: public static double sin(double x) ; SINTAXIS DE ACCESO: nombre de clase. nombre de miembro En lugar del nombre del objeto, el punto viene precedido por el NOMBRE DE LA CLASE, ya que el dato o función miembro estático NO pertenece a ningún objeto en concreto sino a la clase en sí. Modificadores: static (miembros de clase) Ejemplo: double x = Math.sin(y) ; La función sin(x) viene precedida por el nombre de la clase.

28 Modificadores: final Cuando a un dato miembro de una clase se le antepone el modificador final se está definiendo un dato miembro con un valor CONSTANTE. Para definir constantes visibles desde todo el programa, se define, dentro de la clase pertinente, un dato miembro público, estático y final. public class PhysicsConstants{ public static final double PI = 3, ; public static final double EPSILON0 = e-12 ; Regla: las constantes se escriben CON MAYÚSCULAS. Modificadores: final Cuando a una función miembro de una clase se le antepone el modificador final se: Impide que ninguna clase derivada pueda redefinir el comportamiento de dicha función. Se aclarará este aspecto cuando se vea herencia. Se fuerza al compilador a no generar código de invocación a la función sino a insertar directamente el código interno de la función allí donde aparezca la invocación (ahorro de proceso de llamada y recuperación del valor devuelto). ADVERTENCIA: NO ABUSAR. Es difícil saber con seguridad qué funciones necesitarán modificar las clases derivadas.

29 Modificadores: final Cuando a un argumento de una función le precede el modificador final, se impide que en el interior de la función se altere el valor del argumento, si es de tipo primitivo, o el contenido de lo referenciado por el argumento, si es una referencia a un objeto.

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

Java Inicial (20 horas)

Java Inicial (20 horas) Java Inicial (20 horas) 1 Temario 1. Programación Orientada a Objetos 2. Introducción y Sintaxis Java 3. Sentencias Control Flujo 4. POO en Java 5. Relaciones entre Objetos 6. Polimorfismo, abstracción

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

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 1. Introducción a la programación orientada a objetos 2. Las clases 3. El tipo Struct 4. Diferencias entre Class y Struct 5. Pilares de la Programación

Más detalles

Repaso de las características más importantes de la programación Java y su adaptación a Android

Repaso de las características más importantes de la programación Java y su adaptación a Android Repaso de las características más importantes de la programación Java y su adaptación a Android 1. Entorno de programación en java 2. Variables y tipos de datos 3. Operaciones y operadores 4. Clases y

Más detalles

9. Objetos y clases. 9.1. Clases

9. Objetos y clases. 9.1. Clases Programación orientada a objetos con Java 103 9. Objetos y clases Objetivos: a) Presentar el concepto de objeto, clase, atributo, método e instancia b) Interpretar el código fuente de una aplicación Java

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! Clase! Objeto! Atributo o variable de instancia! Método! Instanciar/crear un objeto!

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

FACULTAD DE INGENIERÍA

FACULTAD DE INGENIERÍA NOMBRE DEL PROFESOR: Ing. Héctor Manuel Quej Cosgaya NOMBRE DE LA PRÁCTICA: Variables y Tipos de Datos PRÁCTICA NÚM. [ 1 ] LABORATORIO: MATERIA: UNIDAD: TIEMPO: Centro de Ingeniería Computacional Lenguaje

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

Programación Avanzada para Sistemas de Telecomunicación Arrays

Programación Avanzada para Sistemas de Telecomunicación Arrays Programación Avanzada para Sistemas de Telecomunicación Arrays Juan Carlos Cruellas cruellas@ac.upc.es Objetos y clases Introducción. Vectores de datos primitivos. Vectores de objetos. Introducción En

Más detalles

Gestor de aplicaciones Java. Esta herramienta es el intérprete de los archivos de clase generados por el javac (compilador).

Gestor de aplicaciones Java. Esta herramienta es el intérprete de los archivos de clase generados por el javac (compilador). CAPÍTULO 4 Requerimientos de software Este capítulo presenta las herramientas necesarias para la construcción y ejecución de programas en el lenguaje de programación JAVA, los requerimientos mínimos de

Más detalles

Elementos léxicos del lenguaje de programación Java

Elementos léxicos del lenguaje de programación Java Elementos léxicos del lenguaje de programación Java Elementos léxicos del lenguaje de programación Java Palabras reservadas Identificadores Literales Operadores Delimitadores Comentarios Apéndices Operadores

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

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

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

EXAMEN FINAL Metodología y Programación Orientada a Objetos. Curso 2010 2011. Cuatrimestre de otoño. 17 de Enero de 2011

EXAMEN FINAL Metodología y Programación Orientada a Objetos. Curso 2010 2011. Cuatrimestre de otoño. 17 de Enero de 2011 EXAMEN FINAL Metodología y Programación Orientada a Objetos. Curso 2010 2011. Cuatrimestre de otoño. 17 de Enero de 2011 1. (0,75 PUNTOS) Identificad a continuación las sentencias que son ciertas, descartando

Más detalles

Tema 1. Introducción a los TAD

Tema 1. Introducción a los TAD Tema 1. Introducción a los TAD Objetivos En este tema nos ocupamos inicialmente del concepto de abstracción, dedicando la mayor atención a la abstracción de datos, estudiando aspectos relacionados con

Más detalles

JavaScript. Contenidos. Introducción El lenguaje Validación de formularios. Programación en Internet 2005-2006. DLSI - Universidad de Alicante 1

JavaScript. Contenidos. Introducción El lenguaje Validación de formularios. Programación en Internet 2005-2006. DLSI - Universidad de Alicante 1 Departamento de Lenguajes y Sistemas Informáticos JavaScript Programación en Internet Curso 2005-2006 Contenidos Introducción El lenguaje Validación de formularios DLSI - Universidad de Alicante 1 Introducción

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

Tema 6. Reutilización de código. Programación 2015-2016. Programación - Tema 6: Reutilización de código

Tema 6. Reutilización de código. Programación 2015-2016. Programación - Tema 6: Reutilización de código Tema 6 Reutilización de código Programación 2015-2016 Programación - Tema 6: Reutilización de código 1 Tema 6. Reutilización de código Modularidad. Implementación de métodos. Uso de métodos. Programación

Más detalles

Modulo 1 El lenguaje Java

Modulo 1 El lenguaje Java Modulo 1 El lenguaje Java 13 - Codificación en Java Una de las grandes diferencias entre Java y Pascal en cuando a la codificación es que Java se trata de un lenguaje de los llamados case sensitive Esto

Más detalles

Clases y Objetos. Informática II Ingeniería Electrónica

Clases y Objetos. Informática II Ingeniería Electrónica Clases y Objetos Informática II Ingeniería Electrónica Los Tipos de Datos Hasta ahora, en un programa podemos usar para representar variables a: Tipos fundamentales : enteros (int), caracteres (char),

Más detalles

8. Sentencia return y métodos

8. Sentencia return y métodos 92 A. García-Beltrán y J.M. Arranz 8. Sentencia return y métodos Objetivos: a) Describir el funcionamiento de la sentencia return b) Interpretar el resultado de una sentencia return en el código fuente

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

Definición de clases: Herencia, polimorfismo, ligadura dinámica

Definición de clases: Herencia, polimorfismo, ligadura dinámica Tema 7 Definición de clases: Herencia, polimorfismo, ligadura dinámica Con alguna frecuencia es necesario definir clases de objetos entre las cuales hay elementos comunes. En una aplicación en la cual

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

1. Aplicaciones del J2SE SDK1.4.2 de Sun.

1. Aplicaciones del J2SE SDK1.4.2 de Sun. Dept Informatica Índice 1 Aplicaciones del J2SE SDK142 de Sun 1 11 javac 1 12 java 1 13 javadoc 2 14 Las que no se explican 3 2 Guía de estilo de Java 3 21 Clases 3 211 Nombres para las clases 3 212 Estructura

Más detalles

Prácticas: Introducción a la programación en Java. Informática (1º Ingeniería Civil) Curso 2011/2012

Prácticas: Introducción a la programación en Java. Informática (1º Ingeniería Civil) Curso 2011/2012 Prácticas: Introducción a la programación en Java Informática (1º Ingeniería Civil) Índice Introducción a Java y al entorno de desarrollo NetBeans Estructura de un programa Tipos de datos Operadores Sentencias

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

Tema 3: Herencia en C++ Programación Orientada a Objetos Curso 2008/2009 Begoña Moros Valle

Tema 3: Herencia en C++ Programación Orientada a Objetos Curso 2008/2009 Begoña Moros Valle Tema 3: Herencia en C++ Programación Orientada a Objetos Curso 2008/2009 Begoña Moros Valle Contenido Tipos de herencia Herencia y niveles de visibilidad Herencia y creación Redefinición de métodos Conversión

Más detalles

Para leer la entrada de consola, lo primero que se hace es construir un Scanner que este asociado al flujo de entrada estándar System.

Para leer la entrada de consola, lo primero que se hace es construir un Scanner que este asociado al flujo de entrada estándar System. CICLO: 01/2010 Universidad Don Bosco Materia: Lenguaje de Programación III Contenido: 1-Lectura de Datos de entrada. 2-Introduccion a JOPTIONPANE. 3-Estructuras de Control. ->LECTURA DE DATOS DE ENTRADA

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

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

Tema: Sobrecarga de Operadores.

Tema: Sobrecarga de Operadores. Programación II. Guía 7 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Sobrecarga de Operadores. Objetivos Describir como redefinir (sobrecargar) operadores para que funcionen

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

Primera Escuela de la Red Temática SVO. Madrid, 27-28 Noviembre, 2006 JAVA BÁSICO. Raúl Gutiérrez Sánchez LAEFF - INTA raul@laeff.inta.

Primera Escuela de la Red Temática SVO. Madrid, 27-28 Noviembre, 2006 JAVA BÁSICO. Raúl Gutiérrez Sánchez LAEFF - INTA raul@laeff.inta. Primera Escuela de la Red Temática SVO. Madrid, 27-28 Noviembre, 2006 JAVA BÁSICO LAEFF - INTA raul@laeff.inta.es Qué es Java? Java es un lenguaje de programación orientado a objetos desarrollado por Sun

Más detalles

Partes de un programa en Java. A. Ejemplo de un Programa en Java /* Programa Ejemplo de Java: Muestra una Ventana Archivo: Ejemplo1.

Partes de un programa en Java. A. Ejemplo de un Programa en Java /* Programa Ejemplo de Java: Muestra una Ventana Archivo: Ejemplo1. Partes de un programa en Java A. Ejemplo de un Programa en Java /* class Ejemplo1 { //comienza la clase Ejemplo1. public static void main(string[] args) { // comienza el método main. JFrame miventana;

Más detalles

JAVA PARA PRINCIPIANTES

JAVA PARA PRINCIPIANTES UN POCO DE HISTORIA Java fue creado en 1991 por James Gosling de Sun Microsystems inicialmente llamado Oak que significa roble, esto debido a la cantidad de arboles que rodeaban el sitio donde este trabajaba.

Más detalles

Lenguajes de Programación Curso 04-05. Práctica 4. Herencia. Utilización de interfaces y clases abstractas. 1. Interfaces 1. 2. Clases abstractas 2

Lenguajes de Programación Curso 04-05. Práctica 4. Herencia. Utilización de interfaces y clases abstractas. 1. Interfaces 1. 2. Clases abstractas 2 Objetivos Herencia. Utilización de interfaces y clases abstractas. Índice 1. Interfaces 1 2. Clases abstractas 2 3. Collections Framework 3 3.1. Collection........................................... 3

Más detalles

Clases y objetos. Objeto Instancia de una clase: Unidad atómica que encapsula estado y comportamiento.

Clases y objetos. Objeto Instancia de una clase: Unidad atómica que encapsula estado y comportamiento. Clases y objetos Clase Implementación de un tipo de dato. Una clase sirve tanto de módulo como de tipo - Tipo: Descripción de un conjunto de objetos (equipados con ciertas operaciones). - Módulo: Unidad

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

Tema 3 Elementos básicos de programación

Tema 3 Elementos básicos de programación Representación de Datos y Aplicaciones Tema 3 Elementos básicos de programación Natividad Martínez Madrid nati@it.uc3m.es Objetivos del tema 3 Conocer la estructura básica de un programa Java Comprender

Más detalles

Programación Orientada Objetos. Problemas, soluciones y Programas

Programación Orientada Objetos. Problemas, soluciones y Programas Programación Orientada Objetos Problemas, soluciones y Programas Objetivos pedagógicos Explicar el proceso global de solución de un problema usando un programa de computador. Esto incluye las etapas que

Más detalles

Pruebas de unidad con JUnit

Pruebas de unidad con JUnit Pruebas de unidad con JUnit Cuando se implementa software, resulta recomendable comprobar que el código que hemos escrito funciona correctamente. Para ello, implementamos pruebas que verifican que nuestro

Más detalles

El Concepto De Objeto y Clase

El Concepto De Objeto y Clase TEMA 3 El Concepto De Objeto y Clase V1.2 Manuel Pereira González Agenda Encapsulamiento y Reutilización Introducción a Objetos y Clases Resumen 1 Encapsulamiento y Reutilización Nivel de abstracción ->

Más detalles

Refactorizar (v) Reestructurar el software aplicando una secuencia de refactorizaciones.

Refactorizar (v) Reestructurar el software aplicando una secuencia de refactorizaciones. Refactorización Definición Refactorización (n) Cambio realizado a la estructura interna del software para hacerlo más fácil de comprender y más fácil de modificar sin cambiar su comportamiento observable.

Más detalles

Taller de Programación Estructurada en Java Tema 2. Fundamentos de la programación orientada a objetos

Taller de Programación Estructurada en Java Tema 2. Fundamentos de la programación orientada a objetos Taller de Programación Estructurada en Java Tema 2. Fundamentos de la programación orientada a objetos Ingeniero en Computación José Alfredo Cobián Campos josealfredocobian@gmail.com Facultad de Ciencias

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

1 HILOS (THREADS) EN JAVA

1 HILOS (THREADS) EN JAVA 1 HILOS (THREADS) EN JAVA 1.1QUÉ ES UN THREAD La Máquina Virtual Java (JVM) es un sistema multihilo. Es decir, es capaz de ejecutar varios hilos de ejecución simultáneamente. La JVM gestiona todos los

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

Prof. Dr. Paul Bustamante

Prof. Dr. Paul Bustamante Prácticas de C++ Practica Nº 8 Informática II Fundamentos de Programación Prof. Dr. Paul Bustamante ÍNDICE ÍNDICE... 1 1. INTRODUCCIÓN... 1 1.1 EJERCICIO 1: HERENCIA Y POLIMORFISMO I... 1 1.2 EJERCICIO

Más detalles

Introducción. Herencia y Polimorfismo. Ejemplos (I) Ejemplos (II) Control de Acceso. Herencia

Introducción. Herencia y Polimorfismo. Ejemplos (I) Ejemplos (II) Control de Acceso. Herencia Introducción Herencia y Polimorfismo Se pueden definir jerarquías de clases, con clases generales que definen el comportamiento común a unos objetos y clases específicas que sólo añaden o redefinen el

Más detalles

Sensor de Temperatura utilizando el Starter Kit Javelin Stamp. Realizado por: Bertha Palomeque A. Rodrigo Barzola J.

Sensor de Temperatura utilizando el Starter Kit Javelin Stamp. Realizado por: Bertha Palomeque A. Rodrigo Barzola J. Sensor de Temperatura utilizando el Starter Kit Javelin Stamp Realizado por: Bertha Palomeque A. Rodrigo Barzola J. INTRODUCCION DIFERENCIAS EJEMPLOS JAVA Orientado a Objetos Multiplataforma Programar

Más detalles

Contenidos. Gestión dinámica de memoria. Gestión dinámica de memoria. Introducción. 1. Introducción 2. El operador NEW 3. El operador DELETE

Contenidos. Gestión dinámica de memoria. Gestión dinámica de memoria. Introducción. 1. Introducción 2. El operador NEW 3. El operador DELETE Contenidos 1. Introducción 2. El operador NEW 3. El operador DELETE 1 Introducción Hasta ahora hemos visto que cada vez que queremos usar una variable debemos reservarle un lugar de la memoria al comenzar

Más detalles

1. Manejo de memoria estática 2. Manejo de memoria dinámica

1. Manejo de memoria estática 2. Manejo de memoria dinámica 1. Manejo de memoria estática 2. Manejo de memoria dinámica *La administración de memoria de una computadora es una tarea fundamental debido a que la cantidad de memoria es limitada. *El sistema operativo

Más detalles

1 Estructura básica de un programa C++

1 Estructura básica de un programa C++ Elementos básicos de un lenguaje de alto nivel: C++ CONTENIDOS 1. Estructura básica de un programa C++. 2. Tipos de datos simples. 3. Constantes y variables en C++. Declaración. 4. Operadores y expresiones.

Más detalles

VARIABLES, CONSTANTES Y EXPRESIONES ASIGNACIÓN. TIPOS ELEMENTALES. PRECEDENCIA DE LOS ESTRUCTURAS DE CONTROL. CONDICIONAL E

VARIABLES, CONSTANTES Y EXPRESIONES ASIGNACIÓN. TIPOS ELEMENTALES. PRECEDENCIA DE LOS ESTRUCTURAS DE CONTROL. CONDICIONAL E Java Java es un lenguaje de programación presentado en 1995 enfocado a: soportar los fundamentos de la programación orientada a objetos. generar código independiente de la arquitectura de la computadora

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

Pasos para Realizar un Programa de lenguaje C en modo Consola en Visual Studio 2008 INDICE

Pasos para Realizar un Programa de lenguaje C en modo Consola en Visual Studio 2008 INDICE Pasos para Realizar un Programa de lenguaje C en modo Consola en Visual Studio 2008 Ignacio Alvarez García Septiembre 2012 INDICE 1. Preparar el proyecto para el programa... 1 1.1. Abrir Visual Studio

Más detalles

1. El entorno de desarrollo Eclipse

1. El entorno de desarrollo Eclipse Índice 1. El entorno de desarrollo Eclipse 1 1.1. Qué es Eclipse?........................................................ 1 1.2. Trabajando con Eclipse....................................................

Más detalles

PROGRAMACIÓ DIDÁCTICA: Secuanciación, Temporalización y Unidades Didácticas

PROGRAMACIÓ DIDÁCTICA: Secuanciación, Temporalización y Unidades Didácticas Departamento de Informática PROGRAMACIÓN DIDÁCTICA Curso 11-12 1 CONSEJERÍA DE EDUCACIÓN I.E.S. NERVIÓN Departamento de Informática CICLO FORMATIVO: TÉCNICO SUPERIOR EN DESARROLLO DE APLICACIONES MULTIPLATAFORMA.

Más detalles

GESTIÓN DE EXCEPCIONES EN JAVA. CAPTURA CON BLOQUES TRY CATCH Y FINALLY. EJEMPLOS RESUELTOS. (CU00927C)

GESTIÓN DE EXCEPCIONES EN JAVA. CAPTURA CON BLOQUES TRY CATCH Y FINALLY. EJEMPLOS RESUELTOS. (CU00927C) APRENDERAPROGRAMAR.COM GESTIÓN DE EXCEPCIONES EN JAVA. CAPTURA CON BLOQUES TRY CATCH Y FINALLY. EJEMPLOS RESUELTOS. (CU00927C) Sección: Cursos Categoría: Lenguaje de programación Java nivel avanzado I

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

1. Generación automática de documentación (javadoc)

1. Generación automática de documentación (javadoc) Índice 1. Generación automática de documentación (javadoc)... 1 1.1 Introducción... 1 1.2 La herramienta Javadoc... 1 1.3 Comentando el código Java... 1 2 Guía de estilo de Java... 5 2.1 Clases... 6 2.2

Más detalles

Programación Orientada a Objetos. Java: Excepciones

Programación Orientada a Objetos. Java: Excepciones Programación Orientada a Objetos Java: Excepciones Eduardo Mosqueira Rey Laboratorio de Investigación y desarrollo en Inteligencia Artificial Departamento de Computación Universidade da Coruña, España

Más detalles

TEMA 8: ESTRUCTURAS DE DATOS COMPLEJAS 1 VECTORES ESTÁTICOS 2 2 CADENAS O VECTORES DE CARACTERES 6 3 PASO DE CADENAS Y ARRAYS A FUNCIONES 8

TEMA 8: ESTRUCTURAS DE DATOS COMPLEJAS 1 VECTORES ESTÁTICOS 2 2 CADENAS O VECTORES DE CARACTERES 6 3 PASO DE CADENAS Y ARRAYS A FUNCIONES 8 TEMA 8: ESTRUCTURAS DE DATOS COMPLEJAS 1 VECTORES ESTÁTICOS 2 1.1 VECTORES O ARRAYS UNIDIMENSIONALES 2 1.2 ARRAYS MULTIDIMENSIONALES 3 1.3 INICIALIZACIÓN DE ARRAYS 4 1.3.1 INICIALIZACIÓN DE ARRAYS SIN

Más detalles

FACULTAD DE INGENIERÍA

FACULTAD DE INGENIERÍA NOMBRE DEL PROFESOR: Ing. Héctor Manuel Quej Cosgaya NOMBRE DE LA PRÁCTICA: Operadores y Expresiones PRÁCTICA NÚM. [ 3 ] LABORATORIO: MATERIA: UNIDAD: TIEMPO: Centro de Ingeniería Computacional Lenguaje

Más detalles

Estructura de Datos [Tipos de datos concretos y tipos de datos abstractos]

Estructura de Datos [Tipos de datos concretos y tipos de datos abstractos] Estructura de Datos [Tipos de datos concretos y tipos de datos abstractos] M. en C. Sergio Luis Pérez Pérez UAM CUAJIMALPA, MÉXICO, D. F. Trimestre 14-O Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Estructura

Más detalles

Tema 2: Clase y objetos en Java. Programación Orientada a Objetos Curso 2009/2010 Begoña Moros Valle

Tema 2: Clase y objetos en Java. Programación Orientada a Objetos Curso 2009/2010 Begoña Moros Valle Tema 2: Clase y objetos en Java Programación Orientada a Objetos Curso 2009/2010 Begoña Moros Valle Índice Introducción Clases Objetos Semántica referencia Métodos y mensajes Creación de objetos Modelo

Más detalles

FUNDAMENTOS DE PROGRAMACIÓN. SEPTIEMBRE 2005

FUNDAMENTOS DE PROGRAMACIÓN. SEPTIEMBRE 2005 Dpto. de Ingeniería de Sistemas Telemáticos E.T.S.I. Telecomunicación Universidad Politécnica de Madrid FUNDAMENTOS DE PROGRAMACIÓN. SEPTIEMBRE 2005 Normas de examen: Con libros y apuntes Duración: 2 horas

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

Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente

Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente En este capítulo definimos los requisitos del modelo para un sistema centrado en la mejora de la calidad del código fuente.

Más detalles

Ejercicio 1 (3 puntos).-

Ejercicio 1 (3 puntos).- URJC Ingeniería Técnica de Gestión Abril 2011 Asignatura: SOFTWARE AVANZADO Normas: La prueba consta de 2 ejercicios. La máxima nota del examen es un 8. Siendo la práctica la que añade los 2 puntos que

Más detalles

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

Objetos y Clases en Java. ELO 329: Diseño y Programación Orientados a Objetos Objetos y Clases en Java ELO 329: Diseño y Programación Orientados a Objetos 1 Elementos de Análisis y Diseño orientado a objetos Notación y relaciones entre clases: Las clases son abstracciones para los

Más detalles

Programación Orientada a Objetos. Java: Excepciones

Programación Orientada a Objetos. Java: Excepciones Programación Orientada a Objetos Java: Excepciones Eduardo Mosqueira Rey LIDIA Laboratorio de Investigación y desarrollo en Inteligencia Artificial Departamento de Computación Universidade da Coruña, España

Más detalles

1.00 Clase 8. Datos y métodos estáticos. Datos y métodos estáticos de las clases. Campos de datos estáticos:

1.00 Clase 8. Datos y métodos estáticos. Datos y métodos estáticos de las clases. Campos de datos estáticos: 1.00 Clase 8 Datos y métodos estáticos Datos y métodos estáticos de las clases Campos de datos estáticos: Sólo una instancia de elemento de datos para toda una clase. Ninguna por objeto. Estático es un

Más detalles

BANCO DE PREGUNTAS PARA EVALUACIÓN DE CONOCIMIENTOS DEL CONCURSO DE MÉRITOS Y OPOSICIÓN EXPERTO EN DESARROLLO DE SISTEMAS 1

BANCO DE PREGUNTAS PARA EVALUACIÓN DE CONOCIMIENTOS DEL CONCURSO DE MÉRITOS Y OPOSICIÓN EXPERTO EN DESARROLLO DE SISTEMAS 1 BANCO DE PREGUNTAS PARA EVALUACIÓN DE CONOCIMIENTOS DEL CONCURSO DE MÉRITOS Y OPOSICIÓN EXPERTO EN DESARROLLO DE SISTEMAS 1 1. Cuáles de los siguientes enunciados son declaraciones válidas? 2. Cuál de

Más detalles

Clase adicional 3. Métodos. Temas

Clase adicional 3. Métodos. Temas Clase adicional 3 Temas Métodos o Definir un método o Llamar a un método o Llamada por valor o Constructores o Método static Arrays Vectores Problemas de la clase adicional Problemas de diseño Métodos

Más detalles

Programación en Java. Hola Jesus. Primera clase del curso de Java

Programación en Java. Hola Jesus. Primera clase del curso de Java Programación en Java Un programa o aplicación Java se compone de un conjunto de clases que contienen variables de diversos tipos utilizadas para almacenar datos, y métodos que implementan código capaz

Más detalles

Arquitectura de Aplicaciones

Arquitectura de Aplicaciones 1 Capítulo 13: Arquitectura de aplicaciones. - Sommerville Contenidos del capítulo 13.1 Sistemas de procesamiento de datos 13.2 Sistemas de procesamiento de transacciones 13.3 Sistemas de procesamiento

Más detalles

Laboratorio 7 Motor de búsqueda web basado en el TAD Árbol Binario de Búsqueda GUIÓN DEL LABORATORIO

Laboratorio 7 Motor de búsqueda web basado en el TAD Árbol Binario de Búsqueda GUIÓN DEL LABORATORIO Laboratorio 7 Motor de búsqueda web basado en el TAD Árbol Binario de Búsqueda GUIÓN DEL LABORATORIO 1.- Objetivos del laboratorio Diseño de clases en C++ Comprensión y uso del TAD Árbol Binario de Búsqueda

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

SOLUCIÓN CASO CÁLCULO DE GASTOS DE VIAJE

SOLUCIÓN CASO CÁLCULO DE GASTOS DE VIAJE SOLUCIÓN CASO CÁLCULO DE GASTOS DE VIAJE La cumplimentación del parte de dietas requerirá de la introducción de algunos datos como: el nombre del empleado, la fecha de inicio del viaje, la fecha de finalización,

Más detalles

Tema 4. Clases y objetos en C++ 4.1. Introducción

Tema 4. Clases y objetos en C++ 4.1. Introducción Tema 4 Clases y objetos en C++ 4.1. Introducción A lo largo del curso nos hemos encontrado con varias situaciones en las que era necesario trabajar con datos para los que no existía un tipo predefinido

Más detalles

Modelo de Objetos Distribuidos

Modelo de Objetos Distribuidos Remote Method Invocation Modelo de Objetos Distribuidos Un objeto remoto es un objeto cuyos métodos pueden ser invocados desde otra máquina virtual de java, potencialmente en un host diferente. Modelo

Más detalles

Introducción a Java LSUB. 15 de enero de 2015 GSYC

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

Más detalles

El lenguaje de Programación C. Fernando J. Pereda

El lenguaje de Programación C. Fernando J. Pereda <ferdy@gentoo.org> El lenguaje de Programación C Fernando J. Pereda Por qué aprender C? Portable y muy extendido Estándar (C89, C99) El lenguaje de los sistemas Un lenguaje fácil (no, no es broma) Por

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 Encapsulamiento: Control de Acceso Clases en Java (1) UNIVERSIDAD AUTÓNOMA DEL ESTADO DE MÉXICO En Java se organizan las clases en paquetes

Más detalles

Introducción a los Tipos Abstractos de Datos

Introducción a los Tipos Abstractos de Datos Página 1 de 8 Introducción a los Tipos Abstractos de Datos Introducción: Concepto de abstracción Abstracción funcional y abstracción de datos Construcción de tipos abstractos de datos Especificación de

Más detalles

Contenidos. Funciones (suplemento) Funciones. Justificación del uso de Funciones

Contenidos. Funciones (suplemento) Funciones. Justificación del uso de Funciones Contenidos 1. Justificación del uso de funciones. 2. Declaración de funciones: prototipos. 3. Prototipos y ficheros de cabecera. 4. Polimorfismo (sobrecarga de funciones). 5. Argumentos formales y actuales.

Más detalles

Computación III. Objetivo de aprendizaje del tema

Computación III. Objetivo de aprendizaje del tema Computación III Tema 5 Declaración, inicialización y uso de variables 1 Objetivo de aprendizaje del tema Al finalizar el tema serás capaz de: Identificar la sintaxis de las variables en el lenguaje Java.

Más detalles

Conceptos. ELO329: Diseño y Programación Orientados a Objetos. ELO 329: Diseño y Programación Orientados a Objetos

Conceptos. ELO329: Diseño y Programación Orientados a Objetos. ELO 329: Diseño y Programación Orientados a Objetos Conceptos ELO329: Diseño y Programación Orientados a Objetos 1 Paradigmas de Programación Historia: Los computadores parten cableados por hardware, Luego se introduce la programación en binario, Se desarrolla

Más detalles

PART II: Moviendo al jugador

PART II: Moviendo al jugador UNITY PART II: Moviendo al jugador El movimiento se lo vamos a dar a través de un programa Definición de programa: Un programa es una secuencia de instrucciones, escritas para realizar una tarea específica

Más detalles

TEMA 5. EXCEPCIONES EN JAVA... 1 5.1 DEFINICIÓN DE EXCEPCIONES EN PROGRAMACIÓN... 2 5.2 TIPOS DE EXCEPCIONES / ERRORES Y CÓMO TRATARLOS... 10 5.

TEMA 5. EXCEPCIONES EN JAVA... 1 5.1 DEFINICIÓN DE EXCEPCIONES EN PROGRAMACIÓN... 2 5.2 TIPOS DE EXCEPCIONES / ERRORES Y CÓMO TRATARLOS... 10 5. TEMA 5. EXCEPCIONES EN JAVA... 1 5.1 DEFINICIÓN DE EXCEPCIONES EN PROGRAMACIÓN... 2 5.2 TIPOS DE EXCEPCIONES / ERRORES Y CÓMO TRATARLOS... 10 5.3 TRABAJANDO CON EXCEPCIONES: DECLARACIÓN, CONSTRUCCIÓN,

Más detalles

Solución al Examen de Prácticas de Programación (Ingeniería Informática)

Solución al Examen de Prácticas de Programación (Ingeniería Informática) Solución al Examen de Prácticas de Programación (Ingeniería Informática) Junio 2006 Parte I. Cuestiones (3 puntos=50% nota del examen) 1) Se desea crear un conjunto de clases para representar en un programa

Más detalles

James Gosling, creador de Java

James Gosling, creador de Java Lo que Java intenta hacer y lo hace con bastante éxito, es abarcar dominios diferentes. De esa forma le permite efectuar trabajos para de aplicaciones del lado del servidor, del lado del cliente, para

Más detalles

Introducción al tipo de dato ARRAY

Introducción al tipo de dato ARRAY CONTENIDOS. Introducción al tipo de dato ARRAY. Definición, Características, Declaración, Acceso e Inicialización.. Arrays multidimensionales Definición, Declaración, Acceso e Inicialización. Introducción

Más detalles

Arquitectura y Lenguaje Java

Arquitectura y Lenguaje Java Arquitectura y Lenguaje Java 1 Introducción El lenguaje de programación Java así como su arquitectura se diseñaron para resolver problemas que se presentan en la programación moderna. Se inició como parte

Más detalles

Fundamentos de Informática. Primer Curso de Ingenieros Químicos. Práctica 1. Dev C++ Compilador de C para Windows

Fundamentos de Informática. Primer Curso de Ingenieros Químicos. Práctica 1. Dev C++ Compilador de C para Windows Práctica 1 Dev C++ Compilador de C para Windows 1. Desarrollo de la práctica Posiblemente, el mejor modo de aprender estas nociones, es comenzar con la escritura de un primer programa en Dev-C++, tal como

Más detalles