Capítulo 1. Creación y uso de objetos. 1.1 Creación de objetos

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

Download "Capítulo 1. Creación y uso de objetos. 1.1 Creación de objetos"

Transcripción

1 Capítulo 1 Creación y uso de objetos Al escribir un programa en Java, es común que se tenga la necesidad de crear varios objetos. Éstos interactuarán entre sí mediante el envío y recepción de mensajes. Una vez que un objeto termina el trabajo para el cual fue creado, se recicla la memoria utilizada por él y de esta manera puede ser usada por otros objetos. La creación, uso y eliminación de un objeto se conoce como ciclo de vida de un objeto. En este capítulo se muestra cómo trabajar con objetos ya sea de clases definidas en los paquetes de Java o bien de clases definidas por el programador. El trabajo con objetos incluye: crearlos, interactuar con ellos a través del envío y recepción de mensajes, compararlos, eliminarlos e imprimirlos, entre otras operaciones. 1.1 Creación de objetos El primer paso para trabajar con un objeto, en Java, es su creación. Para crear un objeto se requiere utilizar el operador new seguido del nombre de la clase a la que pertenecerá tal objeto. 1 Por ejemplo, si se sabe que existe la clase Moneda y se desea crear un objeto de ella, se debe escribir la instrucción new Moneda();. La aplicación del operador new crea un objeto, separando el espacio necesario para mantener su estado, y devuelve como resultado la referencia al objeto creado. Una referencia es un tipo de dato usado para trabajar con objetos. El valor que almacena una variable o constante de tipo referencia no es el objeto en sí, es la dirección o referencia al objeto; de ahí que, en las figuras, las referencias se representan con flechas. La confusión puede ser debida a que es común referirse al objeto con el nombre de la referencia. La creación de un objeto puede pensarse de manera análoga al hecho de inflar un globo con gas y atarle un cordón. (Figura 1.1). La referencia es el cordón atado al globo, no es el globo. 1 Recordar que todo objeto pertenece a una clase. 1

2 2 CAPÍTULO 1. CREACIÓN Y USO DE OBJETOS... Objeto de la clase Moneda Referencia al objeto Figura 1.1: Creación de un objeto. En la figura 1.2 se muestra la diferencia entre un tipo primitivo y una referencia. En la parte izquierda se tiene un dato de tipo primitivo, en este caso un número entero, denominado edad cuyo valor es 35. En la parte derecha de la figura se tiene un dato de tipo referencia denominado saludo cuyo valor es la dirección (flecha) a un objeto. edad 35 saludo HOLA Figura 1.2: Variable para dato de tipo primitivo y variable para referencia. Si la referencia devuelta por el operador new no se asigna a ninguna variable, el objeto sólo se crea y no es posible darle un uso posterior. (El globo se infla pero no se fija a nada así que vuela y nadie puede jugar con él). Por esta razón, antes de crear un objeto, es necesario declarar una variable o constante para almacenar la referencia a él. La forma de declarar una referencia es similar a cualquier dato primitivo: se especifica el tipo de dato seguido de un identificador y posiblemente un valor inicial. La diferencia está en que el tipo de dato debe ser el nombre de una clase. Por ejemplo Moneda lasuertuda; (Parte superior de la figura 1.3) con lo cual se separa espacio para una referencia a un objeto de la clase Moneda y sin valor conocido. En la analogía, la variable de tipo referencia es la mano del niño que sostiene el cordón del globo, con la restricción de que en esa mano a lo más puede haber un cordón. Ejemplo 1.1. Código para la creación de un objeto de la clase Moneda en Java. Moneda lasuertuda;... // Código lasuertuda = new Moneda();... // Más código // Declaración de una referencia // Creación del objeto La creación de un objeto de la clase Moneda se ilustra en la parte media de la figura 1.3.

3 1.1. CREACIÓN DE OBJETOS 3 Al crear un objeto, se hace con el estado inicial definido en la clase. En ocasiones, es preciso proporcionar valores para crear este estado inicial. Estos valores se especifican entre los paréntesis que están después del nombre de la clase. Por ejemplo, si se desea una moneda de cincuenta pesos se debe hacer new Moneda(50);. Al igual que con los datos primitivos, es posible asignar un valor a una referencia en el momento de su declaración, de esta manera se pueden tener los dos pasos anteriores en una sola instrucción; por ejemplo: Moneda lasuertuda = new Moneda(); (ver parte baja de la figura 1.3). Moneda lasuertuda;? Declaración de referencia lasuertuda Creación del objeto Moneda lasuertuda; lasuertuda new Moneda(); valor 1 Asignación de referencia lasuertuda Moneda lasuertuda = new Moneda(); valor 1 Figura 1.3: Creación de un objeto en Java. Una referencia al igual que cualquier variable sólo tiene un valor a la vez. Sin embargo, un objeto puede tener varias referencias, esto es el equivalente a que alguien tenga su nombre y varios apodos, o bien, en la analogía con los globos, a un globo con varios cordones. Por ejemplo, si se tienen las siguientes instrucciones: Moneda lasuertuda = new Moneda(); Moneda chiquita = lasuertuda; Moneda mimoneda = lasuertuda; se tiene el efecto gráfico mostrado en la figura 1.4. En las dos últimas instrucciones no se crean objetos, debido a que no se usa el operador new, sólo se crean referencias al objeto existente. En este caso se dice que chiquita y mimoneda son alias de lasuertuda. Al terminar de trabajar con un objeto se puede asignar el valor null a la referencia, con lo cual el objeto ya no está accesible desde tal referencia. La palabra null está reservada por Java para asignar a las variables de tipo referencia cuando se desea especificar que no

4 4 CAPÍTULO 1. CREACIÓN Y USO DE OBJETOS lasuertuda chiquita mimoneda valor 1 Figura 1.4: Varias referencias a un objeto. están ligadas a ningún objeto. Por ejemplo al escribir la instrucción lasuertuda = null; se tiene el efecto que muestra la figura 1.5. En caso de que se asigne el valor null a la única referencia al objeto, éste ya no puede accesarse más. lasuertuda chiquita (lasuertuda = null;) valor 1 mimoneda Figura 1.5: Asignación de valor nulo a una referencia. En resumen, el valor de una referencia puede ser el valor de otra variable (o constante) de tipo referencia, el resultado de la creación de un objeto o bien el valor constante null. 1.2 Uso de objetos Una vez creado un objeto se le pueden enviar mensajes, ya sea para conocer su estado, modificar su estado, realizar algún cálculo, etcétera. Cada mensaje enviado se implementa mediante la llamada a un método haciendo uso de la notación punto cuya sintaxis es la siguiente: referenciadelobjeto.nombredelmétodo(listadeparamétros) La notación punto consta del nombre o identificador de la referencia al objeto que atenderá el mensaje, un punto, el nombre del método y la lista de parámetros para esa llamada en particular. La lista de parámetros, es una lista de identificadores o literales, cada uno separado por comas. Siempre deben escribirse los paréntesis independientemente de que el método requiera, o no, parámetros. La respuesta a un mensaje depende de la interacción entre los métodos definidos en la clase del objeto que recibió el mensaje, y del valor asignado en el mensaje a cada uno de

5 1.2. USO DE OBJETOS 5 sus parámetros. En algunos casos, la respuesta a un mensaje implica cambiar el estado de un objeto. Por ejemplo, si se tiene un objeto llamado miauto de la clase Automóvil y se le envía el mensaje frenar (mediante la sintaxis miauto.frenar();) la velocidad del automóvil cambia a cero (Figura 1.6). a) Envío de mensaje b) Recepción del mensaje miauto.frenar() miauto.frenar() jaime miauto jaime miauto velocidad velocidad... 0 Figura 1.6: Envío y recepción de mensajes. Por otra parte, hay mensajes que requieren información adicional. Por ejemplo, si se desea disminuir la velocidad de un auto es necesario indicar en cuánto, para ello en la llamada al método se debe especificar este valor entre los paréntesis; para el ejemplo del auto se podría escribir miauto.ajustarvelocidad(80) (Figura 1.7). a) Envío de mensaje b) Recepción del mensaje miauto.ajustarvelocidad(80) miauto.ajustarvelocidad(80) jaime miauto jaime miauto velocidad velocidad Figura 1.7: Envío y recepción de mensajes con parámetros. En ocasiones se espera recibir el valor de un atributo de la estructura como una respuesta a un mensaje, por ejemplo, si interesa conocer la velocidad del auto en un momento dado es posible preguntar, y esperar que indique un valor (Figura 1.8). En el caso que la respuesta a un mensaje sea un valor, es conveniente que este valor se almacene en alguna variable para su uso posterior. Ejemplo: velocidadactual = miauto.conocervelocidad(); La ejecución de los programas es secuencial, por lo tanto, una vez que se envía un mensaje a un objeto, el objeto emisor debe esperar a que termine de ejecutarse el método que responde a dicho mensaje antes de realizar cualquier otra tarea. Para poder llamar a un método es necesario conocer su signatura o firma pues ésta proporciona la información necesaria para poder hacerlo. La firma de un método consta

6 6 CAPÍTULO 1. CREACIÓN Y USO DE OBJETOS a) Envío de mensaje b) Recepción del mensaje miauto.obtenervelocidad() miauto.obtenervelocidad() jaime miauto jaime miauto velocidad velocidad Figura 1.8: Recepción de mensajes que devuelven un valor. del nombre del método y entre paréntesis una lista con los parámetros que requiere para trabajar. Esta lista indica el tipo y posiblemente el nombre de cada parámetro, el orden de los parámetros está implícito en la lista. El tipo de valor que devuelve el método no forma parte de la firma, sin embargo en este capítulo se incluye, porque es conveniente almacenar el resultado de un método en una variable (o constante) del tipo de valor que se especifica en el resultado para poder trabajar con ese valor más adelante. Ejemplos de firmas: char lanzar(); // Devuelve un caracter y no requiere parámetros. String obtenernombre(); // Devuelve una cadena y no requiere parámetros. void asignarnombre(string); // No devuelve nada y requiere una cadena. double distancia (Punto); // Devuelve un doble y requiere un Punto. 1.3 Eliminación de objetos Java permite al programador crear todos los objetos que necesite sin preocuparse de saber si el sistema de cómputo tiene suficientes recursos o no, la máquina virtual se encarga de destruirlos cuando ya no se necesitan. La JVM también se hace cargo de recuperar la memoria utilizada por los objetos que han sido eliminados, esto lo hace mediante la utilización de un recolector de basura el cual es activado automáticamente. En tanto que para crear un objeto se debe utilizar el operador new, la eliminación de objetos es implícita, se realiza cuando ya no hay más referencias a él. En general, el programador no tiene que ocuparse de la eliminación de los objetos, pero si se piensa que se tienen varios objetos sin referencia, se puede llamar al método gc de la clase System quizá porque se requiera disponer de todos los recursos del sistema en ese momento.

7 1.4. EJEMPLOS DE TRABAJO CON OBJETOS Ejemplos de trabajo con objetos Los objetos se comunican entre sí mediante llamadas a métodos. Así que un programa en Java debe verse como una serie de objetos llamando a métodos. En esta sección se presentan programas cuyo objetivo es ilustrar el trabajo con objetos en Java, de tal forma que se asume que las clases que se usan en estos ejemplos existen. Ejemplo 1.2. Diseño de un programa que muestra en la pantalla un texto de felicitación. 1. Encontrar los objetos principales. Los sustantivos son: programa, pantalla y texto de felicitación. El sustantivo programa no se convierte en clase, en general se convierte en el método principal del programa, cuya programación será el resultado del escenario especificado en el tercer paso de esta metodología. Pantalla no se va a programar pues es en donde se verá el resultado del programa. Felicitación es el resultado del programa. 2. Determinar el comportamiento deseado. En este caso, como no hay objetos en la definición del problema no es posible asociarles comportamiento. 3. Definir escenarios. Para ayudar al diseño del programa, sobre todo en este caso en que la descripción es tan breve se define el escenario del programa. (a) El usuario ejecuta el programa. (b) Algún objeto imprime el mensaje de felicitación. En este caso se ha descubierto que se requiere un objeto capaz de escribir un mensaje de felicitación. Todo programa requiere mostrar mensajes al usuario, ya sea para interactuar con él o bien para mostrar los resultados del programa. De ahí que Java considera el monitor de la computadora como el objeto que sirve para que el usuario interactúe con los programas. En Java hay un objeto predefinido System.out el cual responde a los métodos println y print para mostrar información en el monitor. Ambos métodos reciben como parámetro una cadena y la despliegan en el monitor al ejecutarse. La diferencia entre estos métodos radica en que el método println una vez que muestra su cadena en el monitor pone un salto de línea para que la siguiente cadena desplegada empiece en una nueva línea y el método print no hace el salto de línea. Por ser un objeto predefinido no es necesario crearlo mediante el operador new, basta con usarlo en los lugares que se requiera enviar información al usuario.

8 8 CAPÍTULO 1. CREACIÓN Y USO DE OBJETOS Todo programa en Java está formado por clases, aquí se muestra como construir una clase que solamente contiene el método main que es en donde inicia la ejecución de todo programa. Al dar, en el sistema operativo, la instrucción java Felicitacion se ejecuta automáticamente este método. Ejemplo 1.3. Implementación del programa para mostrar un mensaje de felicitación. /** * Programa para que envie un mensaje de felicitación. * Objetivo Mostrar el uso del objeto System.out Amparo López Gaona Noviembre 2010 */ public class Felicitacion { // 1 public static void main (String [] pps) { // 2 System.out.println(" Felicidades! Has escrito tu primer programa en Java");// 3 // 4 // 5 Los comentarios forman parte de la documentación de los programas, su objetivo es facilitar las tareas de depuración y mantenimiento de los programas, por lo tanto, deben ser informativos de lo que se está codificando y cómo se está haciendo en términos generales, no deben especificar cosas obvias. Los comentarios no aportan nada funcional a los algoritmos, únicamente sirven para facilitar su comprensión, por tanto son ignorados por el compilador. Es recomendable que todo programa en Java empiece con un comentario en el que se describe el objetivo del programa, el nombre del programador y la fecha de realización. Este comentario abarca varias líneas así que se utiliza un comentario que empieza con /** y termina con */ además, se recomienda incluir algunas instrucciones que empiezan con arroba como seguida del nombre del programador. Como no existe una instrucción para especificar la fecha, en este texto se coloca en la Estos comentarios son útiles para generar la documentación del programa en páginas en HTML 2 de manera automática. Para generar la documentación se emplea el programa javadoc seguido del nombre del archivo fuente, en el apéndice?? se tiene un ejemplo de su utilización y el resultado obtenido. Para facilitar la explicación del programa, se numeraron las líneas con un comentario al final de cada una de ellas. En la línea 1 se define una clase llamada Felicitacion. La forma de definirla es mediante las palabras reservadas public class seguidas de un identificador para el nombre de la clase. En Java siempre se tienen que construir clases, por lo menos una que utilice objetos de clases definidas por otros, como en este ejemplo. 2 Para poder ser leídas desde cualquier navegador de Internet.

9 1.4. EJEMPLOS DE TRABAJO CON OBJETOS 9 En la línea 2 se define el método main que es en donde inicia la ejecución del programa. Esta línea tiene que escribirse exactamente como aparece en el ejemplo. En el siguiente capítulo se explica el significado de cada palabra que aparece en esta línea. En la línea 3, se envía el mensaje println al objeto System.out. En este caso el método println recibe la cadena " Felicidades! Has escrito tu primer programa en Java" En la línea 4 está la llave que termina el método main. En la línea 5 está la llave que termina la clase Felicitacion. Para compilar este programa se debe dar la instrucción javac Felicitacion.java. Debido a que la clase Felicitacion contiene al método main, el nombre del archivo debe ser igual al nombre de la clase y terminar con.java. En caso de encontrar errores se deben corregir y volver a compilar el programa, repitiendo estos pasos hasta que no haya errores. Entre los errores comunes que se cometen al empezar a programar está omitir el símbolo de punto y coma con que se termina cada instrucción, otro error frecuente es no cerrar las comillas o bien cerrarlas en una línea diferente de la que se abrieron. Una vez libre de errores de sintaxis, se puede ejecutar el programa con la instrucción java Felicitacion. Al hacerlo se hace una llamada implícita al método main de la clase Felicitacion. El resultado de esta llamada es mostrar en la pantalla de la computadora lo siguiente: Felicidades! Has escrito tu primer programa en Java Recordar que las comillas se utilizan para especificar que se tiene una literal y no son parte de la cadena. Ejemplo 1.4. El programa 1.3 podría haberse escrito sin ninguna alineación como se muestra a continuación: /** * Programa sencillo para que envié un mensaje de felicitación. * Objetivo Mostrar un programa sin alineación. Amparo López Gaona Noviembre 2010 */ public class Felicitacion{public static void main(string[] pps){system.out.println (" Felicidades! Has escrito tu primer programa en Java"); Este programa funciona igual que el programa 1.3, sólo es más compacto, con lo cual se ahorra espacio en su almacenamiento; sin embargo, es mucho más difícil de leer y en su caso de corregir o modificar, de ahí la importancia de la alineación de instrucciones. Ejemplo 1.5. El siguiente programa desplegará la felicitación en dos líneas. /** * Programa sencillo para que envie un mensaje de felicitación. * Objetivo Mostrar cómo se crean y escriben mensajes en más de una línea. Amparo López Gaona

10 10 CAPÍTULO 1. CREACIÓN Y USO DE OBJETOS Noviembre 2010 */ public class FelicitacionEn2Lineas { // 1 public static void main (String [] pps) { // 2 System.out.println(" Felicidades!"); // 3 System.out.println("\t Has escrito tu primer programa en Java"); // 4 // 5 // 6 Es importante notar que en el segundo mensaje, la cadena empieza con \t, que es el caracter para el tabulador de espacios en blanco. El resultado de este programa es: Felicidades! Has escrito tu primer programa en Java Las líneas 3 y 4 se podrían escribir en una sola como sigue: System.out.println(" Felicidades!\n\t Has escrito tu primer programa en Java"); En caso de que el mensaje fuera tan grande que la cadena no cupiera en una sola línea sería necesario dividirlo, para ello se tendrían que cerrar las comillas y continuar en la siguiente línea especificando una concatenación de cadenas, como sigue: System.out.println(" Felicidades!\n\t Has escrito tu primer programa en Java y" + " esto es un gran paso en tu carrera como programador."); Si las líneas 3 y 4 se cambiaran por las siguientes líneas: System.out.print(" Felicidades!"); System.out.println("\t Has escrito tu primer programa en Java"); El resultado sería el mensaje en una sola línea debido a que la primera instrucción no baja de línea, así que el siguiente mensaje empezará en donde acabe el primero, es decir después del signo de admiración. Ejemplo 1.6. Programa que felicita al usuario del programa incluyendo su nombre en la felicitación. Se desea que cada vez que se ejecute este programa, éste le pregunte a la persona su nombre y luego la felicite. 1. Encontrar los objetos principales. Sustantivos: usuario, nombre y felicitación. Al igual que programa, la palabra usuario es común en la descripción de problemas y no se toma en cuenta como candidato a objeto.

11 1.4. EJEMPLOS DE TRABAJO CON OBJETOS Determinar el comportamiento deseado. En este caso, como no hay objetos en la definición del problema no es posible asociarles comportamiento. 3. Definir escenario. (a) Solicitar el nombre del usuario. (b) Almacenarlo en un objeto de la clase String. (c) Felicitar al usuario incluyendo su nombre en la felicitación. Este problema es muy parecido al problema anterior, excepto que ahora se requiere interactuar con el usuario para solicitarle su nombre y leerlo, así que además del objeto para enviar el mensaje, se requiere un objeto para poder leer del teclado. Finalmente, se requiere un objeto para almacenar el nombre de la persona que ejecuta el programa. Solicitar datos al usuario es tarea cotidiana en los programas, para ello Java proporciona en el paquete java.util la clase Scanner, la cual tiene métodos para interactuar con el usuario de los programas, por lo tanto tiene métodos para leer, del teclado, datos de cada tipo primitivo de Java. Al crear un objeto de la clase Scanner se debe dar como parámetro el objeto System.in para que la lectura sea del teclado. Cada método proporcionado en esta clase, tiene por nombre nexttipo, donde el sufijo tipo corresponde al tipo primitivo que se desea leer. Como es la segunda palabra del nombre de un método debe empezar con mayúscula. Por ejemplo, para leer un número entero se tiene el método nextint. También incluye el método nextline que se utiliza para leer cadenas de caracteres. Las firmas de los métodos se presentan en la tabla 1.1. Sintaxis boolean nextboolean() byte nextbyte() double nextdouble() int nextint() long nextlong() float nextfloat() short nextshort() String nextline() Descripción del resultado Devuelve el booleano leído del teclado. Devuelve el byte leído del teclado. Devuelve el número real leído del teclado. Devuelve el número entero leído del teclado. Devuelve el número entero grande leído del teclado. Devuelve el número real grande leído del teclado. Devuelve el número entero pequeño leído del teclado. Devuelve la cadena leída del teclado. Tabla 1.1: Algunos métodos de la clase Scanner

12 12 CAPÍTULO 1. CREACIÓN Y USO DE OBJETOS Si se desea usar métodos de clases definidas en cualquier paquete de Java se deben llamar con la sintaxis: NombreDePaquete.NombreDeClase.NombreDeMétodo(parámetros). Una forma abreviada de hacerlo es incluir, al principio del archivo (fuera de la clase), la instrucción import NombreDePaquete.*; Ejemplo import java.util.*; y luego ya se puede usar el método como si estuviera definido en esa clase, es decir sólo basta especificar su nombre y parámetros. Cabe destacar que la instrucción import no copia el código, sólo avisa al compilador en donde buscar. A continuación se muestra la implementación del algoritmo. import java.util.scanner; // 0 /** * Programa para enviar una felicitación personalizada. * Objetivo Mostrar cómo se crean y usan objetos de distintas clases. Amparo López Gaona Noviembre 2010 */ public class FelicitacionPersonalizada { public static void main (String [] pps) { Scanner in = new Scanner(System.in); // 1 String nombre; // 2 System.out.println("Dame tu nombre "); // 3 nombre = in.nextline(); // 4 System.out.print(" Felicidades "+ nombre+ "! "); // 5 System.out.println("Has escrito tu primer programa en Java"); // 6 En la línea 1 de este programa se crea un objeto de la clase Scanner. En este caso, y a lo largo de todo el libro, se le pasará como parámetro al momento de crear el lector el objeto System.in. Para poder crearlo, se debe avisar al compilador que se va a utilizar el paquete en donde está está clase por esta razón es indispensable empezar el programa con la línea cero que tiene la instrucción import java.util.scanner; En la línea 2, se crea una referencia a un objeto de la clase String que contendrá el nombre del usuario de programa. Esta clase la proporciona Java, en el paquete java.lang. No es necesario incluir explícitamente este paquete. Notar que entre las declaraciones y las instrucciones se deja una línea en blanco esto es para facilitar la lectura. En la línea 3, se pide al usuario que proporcione su nombre. Si no se incluyera esta instrucción, el usuario no sabría que hacer y la ejecución del programa quedaría detenida pues se trataría de realizar la instrucción de lectura pero como el usuario no sabe que tiene que teclear algo se queda en espera de algún resultado.

13 1.4. EJEMPLOS DE TRABAJO CON OBJETOS 13 En la línea 4, se lee el nombre del usuario mediante la llamada al método nextline de la clase Scanner, el resultado de este método (que es la referencia a una cadena) se almacena en la variable nombre. Recordar que es importante almacenar el resultado de la llamada a un método en una variable de tipo correspondiente para poder hacer uso de ese valor posteriormente. Al ejecutar la línea 5, se imprime la felicitación seguida del nombre del usuario. Para ello se utiliza el operador + con cadenas de caracteres como se vio en la sección??. A continuación un ejemplo de ejecución de este programa: Dame tu nombre Andrea Felicidades Andrea! Has escrito tu primer programa en Java En este programa se puede apreciar cómo es posible tener varios objetos y estos objetos pueden ser de clases diferentes. La clase String tiene métodos para comparar cadenas, buscar subcadenas, extraer subcadenas, crear una copia de una cadena, convertirla a minúsculas o mayúsculas, entre otros. Algunos de ellos se muestran en la tabla 1.2. Sintaxis charat(int) equals(string) indexof(string) length() substring(int, int) tolowercase() touppercase() trim() Descripción del resultado Devuelve el caracter de la posición indicada. Devuelve true si la cadena pasada como parámetro es igual a la cadena que llama al método. Devuelve false en caso contrario. Devuelve la posición en donde empieza la subcadena pasada como parámetro. Devuelve la cantidad de caracteres que tiene la cadena. Devuelve la cadena formada por los caracteres que están desde la posición indicada en el primer parámetro hasta uno antes de la indicada en el segundo parámetro. Devuelve la cadena en minúsculas. Devuelve la cadena en mayúsculas. Devuelve la cadena sin espacios en blanco al final. Tabla 1.2: Métodos de la clase String Para la descripción completa de todos los métodos de esta clase consultar la dirección Ejemplo 1.7. Programa para conversión de nombres. El programa debe leer del teclado el nombre completo de una persona separando con una coma el nombre de los apellidos y mostrarlo en el formato: apellido materno, apellido paterno, nombre.

14 14 CAPÍTULO 1. CREACIÓN Y USO DE OBJETOS 1. Encontrar los objetos principales. Sustantivos: programa, teclado, nombre completo, persona, coma, nombre, apellidos, formato, apellido materno, apellido paterno. En este caso, como en los dos anteriores sólo se tienen objetos para interactuar con el usuario y cadenas para leer y manipular los nombres. 2. Definir escenario. (a) El programa solicita al usuario un nombre completo en un formato especial. (b) El usuario teclea el nombre completo separando con una coma el nombre de los apellidos. (c) El programa lee el nombre tecleado y lo almacena en un objeto de la clase String. (d) El programa extrae cada elemento del nombre. (e) El programa acomoda los elementos del nombre de acuerdo al formato deseado. (f) El programa muestra el nombre en el nuevo formato. import java.util.scanner; /** * Programa para convertir nombres de persona de un formato a otro * Objetivo Trabajar con objetos de la clase String. Amparo López Gaona Noviembre 2010 */ public class ConvertidorNombres { public static void main (String [] pps) { Scanner in = new Scanner(System.in); String nombrecompleto = new String(); String nombre, apaterno, amaterno; System.out.println("Dame el nombre completo de una persona."); System.out.println("Separando el nombre de los apellidos con una coma"); nombrecompleto = in.nextline(); // Elimina blancos al final de la línea nombrecompleto = nombrecompleto.trim(); int posición = nombrecompleto.indexof(","); //Busca la coma nombre = nombrecompleto.substring(0, posición); nombrecompleto = nombrecompleto.substring(posición+2,nombrecompleto.length()); posición = nombrecompleto.indexof(" "); //Busca el primer blanco de la línea

15 1.4. EJEMPLOS DE TRABAJO CON OBJETOS 15 apaterno = nombrecompleto.substring(0, posición); nombrecompleto = nombrecompleto.substring(posición+1); amaterno = nombrecompleto; String nombrenuevo = amaterno + " " + apaterno + " " + nombre; System.out.println("("+nombreNuevo+ ") en el formato solicitado."); Notar que para extraer los dos primeros elementos se extrae la cadena desde la posición inicial hasta donde se encuentra el delimitador, que en el primer caso es una coma y, en el segundo un espacio en blanco. Ejemplo 1.8. Programa para jugar a los volados con la computadora. El juego de volados es un juego entre dos personas, una de ellas lanza una moneda al aire y la otra trata de adivinar la cara que estará visible al caer la moneda al suelo. La cara puede ser águila o bien sol. Si acierta gana y si no es el caso pierde. En este caso el lugar de la persona que lanza la moneda será tomado por la computadora. 1. Encontrar los objetos principales. Sustantivos: juego, persona, jugador, moneda, aire, cara, suelo, computadora. Juego, es lo que se quiere programar. Persona y jugador son sinónimos y se refieren al usuario del programa. Computadora es con quién se va a jugar. Aire y suelo están relacionados con el juego físicamente, no se van a programar como clases. Cara es atributo de la moneda. Tanto águila como sol son valores de la cara de la moneda. Así que el único objeto que se requiere es una moneda y aunque no se especifica, implícitamente en la definición del problema están objetos para interactuar con el usuario. 2. Determinar el comportamiento deseado. Verbos: lanzar la moneda, cara de la moneda que estará visible, caer la moneda. Estos son métodos de la clase Moneda como se puede deducir de la definición del problema. 3. Definir escenario. (a) El programa da al usuario la bienvenida y le solicita predicción (águila o sol). (b) El programa lee la predicción del usuario. (c) El programa lanza la moneda.

16 16 CAPÍTULO 1. CREACIÓN Y USO DE OBJETOS (d) El programa muestra la cara visible de la moneda. (e) El programa determina el ganador. Se puede asumir que ya existe la clase Moneda con un método lanzar que devuelve la cadena aguila si cae águila y sol en otro caso. El algoritmo descrito en el escenario, se presenta en las siguientes líneas de programa. import java.util.scanner; /** * Programa para que el usuario juegue volados con la computadora. * Objetivo Mostrar cómo se crean y usan objetos de distintas clases. Amparo López Gaona Noviembre 2010 */ public class Volados { static public void main (String [] pps) { Moneda centenario = new Moneda(); //Declaración de variables Scanner in = new Scanner(System.in); String nombre, pidio, cayo; System.out.print("Dame tu nombre "); // Solicita nombre del jugador nombre = in.nextline(); // Solicita predicción System.out.print(nombre+ ", qué pides: águila o sol? "); pidio = in.nextline(); // Lee predicción pidio = pidio.tolowercase(); // La pasa a minúsculas pidio = pidio.trim(); cayo = centenario.lanzar(); System.out.println("Cayó " + cayo); // Lanza la moneda // Muestra lo que cayó En las primeras líneas del método main se crean los objetos que se requerirán en el programa. Éstos son: un objeto de la clase Moneda, es el objeto con el que se jugará; un objeto de la clase Scanner con el propósito de que permita al programa enterarse de la predicción del usuario, en cuanto a la cara que mostrará la moneda al caer; un objeto de la clase String para almacenar el nombre del jugador; dos variables más de tipo String, una para saber con qué cara pensó el usuario que caería la moneda y la otra para almacenar el valor con el que realmente cayó. Se solicita al jugador su nombre; se lee este nombre y se almacena en la cadena referenciada por la variable nombre. Se imprime el nombre del jugador seguido de la solicitud para que

17 1.4. EJEMPLOS DE TRABAJO CON OBJETOS 17 especifique lo que elige. Por ejemplo, Andrea, que pides: aguila o sol?. El jugador debe escribir una cadena con su petición. Se lee la selección del usuario, enviando el mensaje nextline al objeto in de la clase Scanner. Este método devuelve la línea (cadena) tecleada por el usuario. La respuesta al mensaje se almacena en la variable pidio convertida a minúsculas y sin espacios en blanco después de la última letra. Se simula el lanzamiento al aire de la moneda, mediante el mensaje lanzar al objeto centenario de la clase Moneda. Este método no requiere argumentos y devuelve una cadena; ésta puede ser aguila si cae águila o bien sol si cae sol. El resultado de este método se almacena en la variable cayo. Se muestra lo que cayó, mediante la instrucción System.out.println que recibe como parámetro la cadena "Cayó "+ cayo. Notar que la explicación dada al programa es prácticamente la misma que se puede leer con los comentarios del mismo. Es un ejemplo de la importancia de los comentarios adecuados. Si el programa termina aquí, el usuario puede saber si ganó o perdió de acuerdo al resultado del programa. Sin embargo, para evitar trampas se solicitó que el programa determine el ganador. Para poder hacerlo se requiere de una instrucción que permita verificar si el valor solicitado y el que cayó son iguales o no. En el capítulo anterior se presentaron las expresiones condicionales, y lo que se requiere en este punto es una expresión que compare pidio con cayo y de acuerdo al resultado de esta comparación ejecute cierta acción. Es decir, se requiere una instrucción condicional, la instrucción if cuya sintaxis y semántica se explican a continuación. La instrucción condicional if tiene la siguiente sintaxis: empieza con la palabra reservada if seguida de una expresión booleana, denominada condición, entre paréntesis; luego un bloque de instrucciones que se ejecutan cuando la evaluación de la condición es verdadera, tal y como se muestra a continuación. if (condición) bloque1 Un bloque es un conjunto de instrucciones agrupadas con un par de llaves ({) con el propósito de ser tratadas como unidad. Dentro de un bloque puede haber otros bloques. La convención de Java especifica que la llave de inicio del bloque se pone al final de la instrucción que lo contendrá, en este caso la instrucción if. Las instrucciones dentro del bloque llevan un nuevo margen de alineación y la llave que cierra el bloque va alineada al mismo nivel que la instrucción donde se abre el bloque. Las instrucciones contenidas en el bloque de la instrucción if se ejecutarán siempre y cuando el resultado de la evaluación de la condición sea true, en caso contrario se ignoran. Otra forma de la instrucción if es la siguiente:

18 18 CAPÍTULO 1. CREACIÓN Y USO DE OBJETOS if (condición) bloque1 else bloque2 La instrucción condicional if ejecuta sólo uno de los dos bloques de instrucciones incluidos en ella de acuerdo al resultado de la evaluación de la condición, si la condición devuelve el valor true se ejecuta sólo el bloque1 y en caso de devolver false se ejecuta sólo el bloque2; nunca se ejecutan ambos bloques. En ambos casos de instrucción if, la ejecución del programa continúa después de la instrucción if. Así para que el programa determine y muestre si el jugador ganó o perdió, antes de terminar el programa anterior se debe incluir la siguiente instrucción condicional: if (pidio.equals(cayo)) { System.out.println(nombre + ", ganaste :) "); else { System.out.println(nombre + ", perdiste :("); El significado de la instrucción es que si el valor de la variable pidio es igual al de la variable cayo el jugador acertó en su predicción y por lo tanto ganó, que es el mensaje que se envía, en caso contrario perdió. Es decir, sólo puede ganar o perder pero no ambas cosas y se determina cuál de estas situaciones se presenta de acuerdo a la evaluación de la condición. Para comparar dos cadenas no se utiliza el operador == visto en el capítulo anterior, se utiliza el método equals como se especificó en la tabla 1.2. En el siguiente capítulo se explica la razón. En el programa 1.8 qué sucede si el usuario proporciona una cadena distinta de aguila y de sol? El programa funcionará, en este caso con un valor que nunca será igual al resultado del volado, este es un comportamiento incorrecto. En el capítulo?? se resaltó la importancia de desarrollar programas robustos (programas que hacen lo que se desea que hagan y funcionen a prueba de errores), el programa anterior no lo es porque no se está asegurando que el usuario teclee sólo las cadenas permitidas, él puede teclear cualquiera. Para evitar que el programa trabaje con cualquier cadena es necesario verificar el dato leído y en caso de que no sea un valor que se encuentre dentro del conjunto de valores permitidos avisarle al usuario del problema y terminar. Para programar esto se requiere de una instrucción condicional como la siguiente: if (pidio.equals("aguila") pidio.equals("sol")) { // Jugar else { //Enviar mensaje indicando el error

19 1.4. EJEMPLOS DE TRABAJO CON OBJETOS 19 En la condición de la instrucción if anterior se asegura que se puede jugar sólo en caso de que el usuario haya tecleado una cadena correcta independientemente de si lo hace con mayúsculas o minúsculas debido a que antes ésta se convirtió a minúsculas. Ejemplo 1.9. Programa completo y robusto para jugar volados con la computadora. import java.util.scanner; /** * Programa para que el usuario juegue volados con la computadora. * Objetivo Mostrar cómo se crean y usan objetos de distintas clases. Amparo López Gaona Noviembre 2010 */ public class Volados { static public void main (String [] pps) { Moneda centenario = new Moneda(); //Declaración de variables Scanner in = new Scanner(System.in); String nombre, pidio, cayo; System.out.print("Dame tu nombre "); // Solicita nombre del jugador nombre = in.nextline(); // Solicita predicción System.out.print(nombre+ ", qué pides: águila o sol? "); pidio = in.nextline(); // Lee predicción pidio = pidio.tolowercase(); // La pasa a minúsculas pidio = pidio.trim(); cayo = centenario.lanzar(); System.out.println("Cayó " + cayo); // Lanza la moneda // Muestra lo que cayó if (pidio.equals("aguila") pidio.equals("sol")) { cayo = lasuertuda.lanzar(); //Elección válida. Juega System.out.println("Cayo " + cayo); if (pidio.equals(cayo)) System.out.println(nombre + ", ganaste :) "); else System.out.println(nombre + ", perdiste :("); else // Elección incorrecta. System.out.println("Sólo puedes pedir águila o sol. Así no juego."); En este programa se puede observar que en el bloque de la instrucción if puede haber instrucciones de cualquier tipo incluso otra(s) instrucción condicional. La forma de funcionar

20 20 CAPÍTULO 1. CREACIÓN Y USO DE OBJETOS en este ejemplo es la siguiente: si el usuario no tecleo una cadena correcta se envía el mensaje de error Sólo puedes pedir águila o sol. Así no juego. En otro caso, se lanza la moneda y se determina al ganador. Ejemplo Programa que determina entre tres jugadores quién tiene el número mayor al lanzar un dado. En este juego se requieren tres jugadores, cada uno lanza el dado y gana el jugador cuya cara superior del dado haya tenido el valor más alto. Si los tres valores son iguales gana el primer jugador. 1. Encontrar los objetos principales. Sustantivos: jugador, número mayor, dado, valor. Jugador es el usuario del programa; número mayor es valor que calculará el programa. Dado es el objeto principal pues tiene estructura y comportamiento que se utilizará en el programa. Valor es atributo del dado. 2. Determinar el comportamiento deseado (responsabilidades). Para el dado el comportamiento esperado es poder lanzarlo y que muestre el valor de su cara superior. 3. Definir escenario. (a) El programa solicita el nombre a cada jugador. (b) El programa recaba los nombres. (c) Cada jugador lanza el dado. (d) El programa determina el valor más alto. (e) El programa avisa quién es el ganador. /* * Programa que determina el mayor de tres valores de un dado, al ser lanzado * cada vez por un jugador distinto. * Objetivo: ilustrar el uso de condicionales Amparo López Gaona Noviembre 2010 */ import java.util.scanner; class MayorValor { public static void main (String [] pps) { Dado midado = new Dado(); Scanner in = new Scanner(System.in);

21 1.4. EJEMPLOS DE TRABAJO CON OBJETOS 21 int mayor; int valor1, valor2, valor3; String nombre1, nombre2, nombre3; //Valor del dado en cada tirada. //Nombre de los jugadores //Pedir el nombre de cada jugador. System.out.println("Dame el nombre del primer jugador"); nombre1 = in.nextline(); System.out.println("Dame el nombre del segundo jugador"); nombre2 = in.nextline(); System.out.println("Dame el nombre del tercer jugador"); nombre3 = in.nextline(); //Cada jugador lanza el dado. valor1 = midado.lanzar(); valor2 = midado.lanzar(); valor3 = midado.lanzar(); // Avisa qué valor le cayó a cada jugador. System.out.println(nombre1 + " tienes un "+valor1); System.out.println(nombre2 + " tienes un "+valor2); System.out.println(nombre3 + " tienes un "+valor3); // Determina el valor mayor.... // Avisa cuál es el valor mayor. in.println("\n el mayor valor es "+ mayor); Primero se declaran las variables necesarias en este programa: un dado, un objeto lector, variables para almacenar el nombre de cada jugador y otras para almacenar el valor de cada tirada. Una vez solicitado el nombre de cada jugador, se lanza el dado y se almacena el valor de la cara superior en una variable entera distinta. Para determinar el valor mayor lo primero que se ocurre es utilizar una condición como la siguiente: valor1 > valor2 > valor3 pero esto no es posible porque la expresión se evalúa de izquierda a derecha comparando primero valor1 > valor2, el resultado de esta comparación es un valor booleano (true o false), que no puede luego ser comparado con el valor de la variable valor3; se estaría preguntando false > valor3. Existen varias formas para determinar el valor mayor entre tres valores. Una forma consiste en determinar el mayor entre el valor1 y el valor2 y luego encontrar el mayor entre el valor3 y el mayor de los dos anteriores como se muestra a continuación: if (valor1 > valor2) {

22 22 CAPÍTULO 1. CREACIÓN Y USO DE OBJETOS mayor = valor1; else { mayor = valor2; if (valor3 > mayor) { mayor = valor3; En este caso, con la primera instrucción if se determina el mayor entre las variables valor1 y valor2 y se almacena en la variable mayor, luego se compara éste con el valor de la tercera variable (valor3). Si se cumple la condición de la segunda instrucción if la tercera variable tiene el valor mayor y se almacena éste en la variable mayor, y si no se cumple la condición, no se hace nada porque antes ya se había almacenado el valor mayor en la variable mayor que no se modifica. Otra forma de determinar el valor más alto es utilizar el siguiente código: if (valor1 > valor2 && valor1 > valor3) { mayor = valor1; else { if (valor2 > valor1 && valor2 > valor3) { mayor = valor2; else { mayor = valor3; con lo cual se compara el valor de la primera tirada con el de las otras dos para determinar si es la mayor, pero se hace en dos pasos: primero se compara el valor de la primera tirada con el de la segunda. Si es mayor, luego se compara ese mismo valor con el de la tercera tirada. Esta última comparación no se efectúa si la primera tirada tiene valor menor que la segunda, debido a la propiedad de corto circuito mencionada en el capítulo anterior. Si la evaluación de la condición anterior arroja el valor true se sabe que el primer jugador tiene el valor más alto y termina esta instrucción. Si no es el caso, entonces es necesario comparar el valor de la tirada del segundo jugador con las otras dos, si es mayor entonces ésta es la mayor y si no, la mayor es la tercera. En este ejemplo, se tiene que la instrucción de la cláusula else de la instrucción condicional if, es a su vez otra instrucción condicional if. Cuando alguno de los bloques de la instrucción if es a su vez otra instrucción if se tiene anidamiento de instrucciones condicionales if, con lo cual se permite tener una condición después de haber tomado una decisión mediante otra condición. Si en lugar de tener el código como se mostró anteriormente se tuviera el siguiente, en el que se elimina el último else:

23 1.5. EJERCICIOS 23 if ( valor1 > valor2 && valor1 > valor3) { mayor = valor1; else { if (valor2 > valor1 && valor2 > valor3) { mayor = valor2; mayor = valor3; siempre se almacenaría en mayor el valor que obtuvo el tercer jugador, cosa que es incorrecta desde el punto de vista lógico, no desde el sintáctico. Es decir, se tendría un programa que compila, pero que arroja un resultado incorrecto en la mayoría de los casos. Como puede apreciarse, la alineación de las instrucciones es solamente para facilitar la legibilidad del código no para influir en en la ejecución de las instrucciones. Ejemplo Ahora se desea saber no sólo el valor sino cuál jugador lo obtuvo. El cambio que se tiene que hacer al programa es conservar el nombre del jugador, esto se logra declarando una variable de tipo String llamada ganador y modificando las condicionales como sigue: if (valor1 > valor2) { mayor = valor1; ganador = nombre1; else { mayor = valor2; ganador = nombre2; if (mayor < valor3) { mayor = valor3; ganador = nombre3; y al avisar cuál es el valor mayor se incluye el nombre del ganador como sigue: System.out.println("El ganador es "+ ganador + " con un valor de "+ mayor); 1.5 Ejercicios 1. Describir en que difiere una variable para un tipo primitivo de una variable para referencias. 2. Describir en que difiere un tipo primitivo de una clase.

24 24 CAPÍTULO 1. CREACIÓN Y USO DE OBJETOS 3. Responder a las siguientes preguntas con verdadero o falso: (a) Es posible que con una variable se haga referencia a más de un objeto a la vez? (b) Es posible que con una variable se haga referencia a más de un objeto en diferentes momentos? (c) Es posible tener varias referencias a un mismo objeto al mismo tiempo? (d) Es posible crear objetos sin utilizar el operador new? 4. En cada una de las siguientes columnas, que representan una porción de código, especificar cuántos objetos hay, además de cuántas y cuáles referencias tiene cada uno. Objeto t, s; Objeto t, s; Objeto t, s; t = new Objeto(); t = new Objeto(); t = new Objeto(); s = t; s = t; s = new Objeto(); t = null; 5. Es correcto el siguiente código para intercambiar dos valores? Porqué? public class Duda{ public static void main (String[] pps) { int x = 25, y = 18; // Intercambia x con y y = x; x = y; System.out.println("Ahora x = " + x + " y = " + y); 6. Dada la siguiente instrucción: if ((valornuevo >= 0) && (valornuevo < límite)) { valor = valornuevo; (a) Indicar cuál es el rango de valores válidos para asignar el valor de valornuevo a la variable valor. (b) Indicar el rango de valores si se sustituye el operador >= de la condición por el operador >. (c) Indicar el rango de valores permitidos si se sustituye el operador && de la condición por el operador.

25 1.5. EJERCICIOS Es correcto el siguiente código para encontrar el mayor de tres valores? Por qué? if (valor1 > valor2 && valor1 > valor3) { mayor = valor1; if (valor2 > valor1 && valor2 > valor3) { mayor = valor2; else { mayor = valor3; 8. En el programa del ejemplo 1.9 hacer los cambios necesarios para que se determine no sólo el ganador sino también quién queda en segundo lugar y quién en tercero. 9. Qué hace el siguiente programa? class UsoDeCadenas{ public static void main (String [] pps) { String frase = "Una mosca parada en la pared"; System.out.println("La frase :\"" + frase + "\" tiene "+ frase.length() + " letras"); System.out.println("Extraje la palabra :" + frase.substring(4,10)); String otra =frase.touppercase().replace( E, A ).replace( I, A ); otra = otra.replace( O, A ).replace( U, A ); System.out.println("En mayúsculas y con A: "+otra); otra = otra.replace( A, O ).tolowercase(); System.out.println("Ahora en minúsculas y con o: "+otra); String larga =frase.concat(" roja"); System.out.println(larga + "\n"+ frase); 10. Escribir un programa para rotular sobres de cartas dirigidas a James Bond, con la siguiente dirección: J. Bond "Agente 007" Apt. #645 N.Y. USA.

26 26 CAPÍTULO 1. CREACIÓN Y USO DE OBJETOS 11. Escribir un programa que modele un psiquiatra. El programa debe preguntar al usuario, que tomará el papel de paciente, cuál es su problema. Con la respuesta debe preguntar por qué y después de su respuesta decir Muy interesante, hablaremos de ello con más detalle en la siguiente sesión. Por ejemplo: Cómo se encuentra? Estoy deprimido. Porqué dice estoy deprimido? No dije que usted estuviera deprimido; dije que yo estoy deprimido Muy interesante, hablaremos de ello con más detalle en la siguiente sesión. 12. Escribir un programa para calcular el RFC de una persona. El RFC se obtiene tomando las dos primeras letras del apellido paterno, la inicial del apellido materno y la inicial del nombre, seguido de los dos dígitos finales del año de nacimiento, los dos dígitos del mes de nacimiento y dos dígitos para el día de nacimiento. Por ejemplo, si la persona se llama Andrea López López y nació el , su RFC es lola Escribir un programa para que jueguen disparejos entre tres jugadores, uno de ellos es la computadora. El juego consiste en que cada jugador lanza su moneda al aire y gana el jugador cuya cara visible de la moneda sea distinta de la cara visible de cada una de las otras dos monedas. 14. Escribir un programa que juegue dados con las siguientes reglas: se tiran dos dados y se suma el valor de la cara superior de cada uno. Si la suma es 7 u 11 el jugador gana. Si la suma es 2, 3 ó 12 el jugador pierde. Si la suma es 4, 5, 6, 8, 9 ó 10, ésta se convierte en los puntos del jugador quien, para ganar, debe volver a tirar los dados si la suma de esta tirada más lo acumulado da un total de 11 puntos gana, en otro caso pierde.

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

Sintaxis y Convenciones de Java. M. en C. Erika Vilches

Sintaxis y Convenciones de Java. M. en C. Erika Vilches Sintaxis y Convenciones de Java M. en C. Erika Vilches Estructura del Código en Java Hay una clase en un archivo fuente Hay métodos en una clase Hay enunciados en un método Anatomía de una Clase Cuando

Más detalles

La clase estándar Scanner

La clase estándar Scanner La clase estándar Scanner La clase Scanner de Java provee métodos para leer valores de entrada de varios tipos y está localizada en el paquete java.util. Los valores de entrada pueden venir de varias fuentes,

Más detalles

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

Programación Avanzada para Sistemas de Telecomunicación. Objetos y clases. J.C. Cruellas. Objetos y clases Programación Avanzada para Sistemas de Telecomunicación Objetos y clases Juan Carlos Cruellas cruellas@ac.upc.es Objetos y clases Concepto de objeto. Concepto de clase. Clases, objetos y programas. Clases

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

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

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

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

1 ELEMENTOS BASICOS DEL LENGUAJE

1 ELEMENTOS BASICOS DEL LENGUAJE 1 ELEMENTOS SICOS DEL LENGUJE Contenido: Variables su declaracion y asignacion Caracteres en java Secuencias de escape y comentarios Tipos de datos Operadores aritméticos, relacionales y lógicos 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

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

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

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

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

Introducción a la Programación en Java. Page 1

Introducción a la Programación en Java. Page 1 Introducción a la Programación en Java Page 1 Qué es Java? Java es un lenguaje de programación de propósito general, orientado a objetos que fue diseñado específicamente para tener tan pocas dependencias

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

Introducción al lenguaje Java

Introducción al lenguaje Java Tipo de entrega: Fecha límite: Lugar: Introducción al lenguaje Java por grupos de prácticas sesión de laboratorio Atenea Objetivos de la práctica: Escribir aplicaciones simples en Java Utilizar el entorno

Más detalles

Tema: Introducción a Java y Netbeans

Tema: Introducción a Java y Netbeans 1 Tema: Introducción a Java y Netbeans Objetivo Especifico Conocer el uso básico del JDK para la compilación y ejecución de código java desde la linea de comando Conocer el entorno de desarrollo NetBeans

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

Práctica 2: Simón dice

Práctica 2: Simón dice Práctica 2: Simón dice Fecha de entrega: 31 de enero de 2016 0.- Descripción del juego (Wikipedia.org) Simon dice es un juego electrónico, creado por Ralph Baer, que consiste en reproducir una secuencia

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

GUÍA DE LABORATORIO 5 ARREGLOS DE UNA DIMENSIÓN

GUÍA DE LABORATORIO 5 ARREGLOS DE UNA DIMENSIÓN GUÍA DE LABORATORIO 5 ARREGLOS DE UNA DIMENSIÓN INTRODUCCION Un arreglo es una colección de variables del mismo tipo, referidos por un nombre común. En Java, los arreglos tienen una o más dimensiones,

Más detalles

10. Algunas clases estándar de Java (I)

10. Algunas clases estándar de Java (I) Programación orientada a objetos con Java 113 10. Algunas clases estándar de Java (I) Objetivos: a) Presentar algunas de las clases predefinidas en Java b) Interpretar el código fuente de una aplicación

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

INTELIGENCIA ARTIFICIAL 2015 TALLER RÁPIDO DE PROGRAMACIÓN EN JAVA

INTELIGENCIA ARTIFICIAL 2015 TALLER RÁPIDO DE PROGRAMACIÓN EN JAVA INTELIGENCIA ARTIFICIAL 2015 TALLER RÁPIDO DE PROGRAMACIÓN EN JAVA Fuente: http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html Por qué Java? TIOBE Index for March 2015 Fuente: http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

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

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

Introducción al lenguaje de programación java

Introducción al lenguaje de programación java Introducción al lenguaje de programación java Algoritmia y Programación Slide 1 LENGUAJES DE PROGRAMACION Un lenguaje de programación es un idioma artificial diseñado y creado para expresar algoritmos

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

Curso 2010-2011. Informática Lección 2. Introducción a la programación en Java

Curso 2010-2011. Informática Lección 2. Introducción a la programación en Java Fundamentos de Informática Lección 2. Introducción a la programación en Java Curso 2010-2011 Pedro Álvarez y José Ángel Bañares 24/09/2010. Dpto. Informática e Ingeniería de Sistemas. Índice de contenidos

Más detalles

Repaso desarrollo de software Parte #1. Jorge Iván Meza Martínez jimezam@gmail.com

Repaso desarrollo de software Parte #1. Jorge Iván Meza Martínez jimezam@gmail.com Repaso desarrollo de software Parte #1 Jorge Iván Meza Martínez jimezam@gmail.com Especialización en Gestión de Redes de Datos Universidad Nacional de Colombia Sede Manizales 1/55 Contenido Concepto desarrollo

Más detalles

Ejemplos de conversión de reales a enteros

Ejemplos de conversión de reales a enteros Ejemplos de conversión de reales a enteros Con el siguiente programa se pueden apreciar las diferencias entre las cuatro funciones para convertir de reales a enteros: program convertir_real_a_entero print

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

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

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

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

Ejercicios de evaluación de fundamentos de programación en Java

Ejercicios de evaluación de fundamentos de programación en Java Ejercicios de evaluación de fundamentos de programación en Java Jorge Martínez Ladrón de Guevara Editorial EME ISBN 978-84-96285-40-8 Contenido 1. Introducción a Java... 1 Test de evaluación...1 Ejercicios...4

Más detalles

(volver a Tabla de Contenidos)

(volver a Tabla de Contenidos) Para escribir, compilar y ejecutar un programa en Java lo único que realmente se necesita y no viene incluido con el sistema operativo es el kit de desarrollo de Java, denominado SDK (Software Development

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

Universidad Central de Bayamón COLEGIO DE DESARROLLO EMPRESARIAL Y TECNOLOGIA. Número Estudiante:

Universidad Central de Bayamón COLEGIO DE DESARROLLO EMPRESARIAL Y TECNOLOGIA. Número Estudiante: Universidad Central de Bayamón COLEGIO DE DESARROLLO EMPRESARIAL Y TECNOLOGIA Número Estudiante: Fecha: Nombre: Examen #1- COMP 250 Prof. Carlos Rodríguez Sánchez Selección Múltiple. Marque la MEJOR contestación

Más detalles

Curso PHP Módulo 1 R-Luis

Curso PHP Módulo 1 R-Luis Lenguaje PHP Introducción Archivos HTML y PHP: Crear un archivo php es tan sencillo como cambiarle la extensión a un archivo html, por ejemplo podemos pasar de index.html a index.php sin ningún inconveniente.

Más detalles

Funciones mas importantes para el manejo de Caracteres

Funciones mas importantes para el manejo de Caracteres Caracteres Un carácter es un símbolo que la computadora puede representar. Cuando se asigna una constante de carácter a una variable tipo char, esta debe estar entre apostrofes. char letra= a ; Funciones

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

Formato para prácticas de laboratorio

Formato para prácticas de laboratorio Fecha de Efectividad: 2011-1 UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA FACULTAD DE INGENIERÍA (UNIDAD MEXICALI) Formato para prácticas de laboratorio CARRERA PLAN DE ESTUDIO CLAVE DE UNIDAD DE APRENDIZAJE

Más detalles

CAPÍTULO IV BREVE DESCRIPCIÓN DE LA INFRAESTRUCTURA DE CÓMPUTO VISUAL BASIC 6.0 PARA WINDOWS

CAPÍTULO IV BREVE DESCRIPCIÓN DE LA INFRAESTRUCTURA DE CÓMPUTO VISUAL BASIC 6.0 PARA WINDOWS CAPÍTULO IV BREVE DESCRIPCIÓN DE LA INFRAESTRUCTURA DE CÓMPUTO VISUAL BASIC 6.0 PARA WINDOWS 4.1 Antecedentes históricos El lenguaje de programación BASIC (Beginner's All purpose Symbolic Instruction Code)

Más detalles

GUÍA DE TRABAJO Tecnología en Sistemas de Información

GUÍA DE TRABAJO Tecnología en Sistemas de Información 1. IDENTIFICACIÓN Asignatura Laboratorio Lógica y Programación Guía No. 1 Área Básica de la Ingeniería Nivel II Código LLI22 Pensum 10 Correquisito(s) LPI24 Prerrequisito(s) Créditos 2 TPS 2 TIS 4 TPT

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

Ejemplo de lectura por teclado de un número entero: int n; System.out.print("Introduzca un número entero: "); n = sc.nextint();

Ejemplo de lectura por teclado de un número entero: int n; System.out.print(Introduzca un número entero: ); n = sc.nextint(); Fuente : http://puntocomnoesunlenguaje.blogspot.com.ar/2012/08/java-scanner.html Java Scanner para lectura de datos La clase Scanner está disponible a partir de Java 5 y facilita la lectura de datos en

Más detalles

Scripting en el cliente: Javascript. Tecnologías Web

Scripting en el cliente: Javascript. Tecnologías Web Scripting en el cliente: Javascript Tecnologías Web Motivación Por qué usar JavaScript? Permite crear efectos atractivos visualmente Permite crear sitios WEB que se visualicen de la misma manera en distintos

Más detalles

UNIVERSIDAD NACIONAL DE COLOMBIA SEDE DE MEDELLÍN. FACULTAD NACIONAL DE MINAS Escuela de Sistemas

UNIVERSIDAD NACIONAL DE COLOMBIA SEDE DE MEDELLÍN. FACULTAD NACIONAL DE MINAS Escuela de Sistemas UNIVERSIDAD NACIONAL DE COLOMBIA SEDE DE MEDELLÍN FACULTAD NACIONAL DE MINAS Escuela de Sistemas OBJETIVOS: General: Estudiar y utilizar los elementos del entorno de trabajo Visual Basic for Applications

Más detalles

Introduciendo datos desde el

Introduciendo datos desde el Introduciendo datos desde el teclado Pedro Corcuera Dpto. Matemática Aplicada y Ciencias de la Computación Universidad de Cantabria corcuerp@unican.es Objetivos Crear programas interactivos que lean datos

Más detalles

Introducción a Java III. Prof. MSc. Pedro Shiguihara

Introducción a Java III. Prof. MSc. Pedro Shiguihara 1 Introducción a Java III Prof. MSc. Pedro Shiguihara Temas 2 1. Recordando variables 2. Recordando impresiones en pantalla (System.out.println) 3. Entrada de datos usando la clase Scanner Programa Java

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

Programas. Los programas más simples escritos en lenguajes imperativos suelen realizar tres tareas de forma secuencial:

Programas. Los programas más simples escritos en lenguajes imperativos suelen realizar tres tareas de forma secuencial: Programas Estructura de un programa simple Los programas más simples escritos en lenguajes imperativos suelen realizar tres tareas de forma secuencial: Entrada de datos Procesamiento de los datos Salida

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

Curso: Access 2010 Nivel I. Access 2010 Nivel I. Índice del Curso

Curso: Access 2010 Nivel I. Access 2010 Nivel I. Índice del Curso Access 2010 Nivel I Índice del Curso Introducción de la... 2 Objetivos... 3 Contenidos... 4 Consultas... 4 Consultas de Selección... 4 Consulta con Parámetros... 15 Campos calculados en una consulta...

Más detalles

Sentencias o instrucciones en Visual BASIC

Sentencias o instrucciones en Visual BASIC Tecnología a de la Informació Sentencias o instrucciones en Visual BASIC REM Tecnología a de la Informació REM es una sentencia no ejecutable y permite introducir comentarios en los programas. A esta práctica

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

UNIDADES DE ALMACENAMIENTO DE DATOS

UNIDADES DE ALMACENAMIENTO DE DATOS 1.2 MATÉMATICAS DE REDES 1.2.1 REPRESENTACIÓN BINARIA DE DATOS Los computadores manipulan y almacenan los datos usando interruptores electrónicos que están ENCENDIDOS o APAGADOS. Los computadores sólo

Más detalles

INTELIGENCIA EN REDES DE COMUNICACIONES PRÁCTICA FINAL. Ignacio Ribas Ramos Miguel Flecha Lozano Ingeniería de Telecomunicaciones

INTELIGENCIA EN REDES DE COMUNICACIONES PRÁCTICA FINAL. Ignacio Ribas Ramos Miguel Flecha Lozano Ingeniería de Telecomunicaciones INTELIGENCIA EN REDES DE COMUNICACIONES PRÁCTICA FINAL BLACKJACK Ignacio Ribas Ramos Miguel Flecha Lozano Ingeniería de Telecomunicaciones 1. Explicación del juego de cartas del Blackjack El Blackjack

Más detalles

Lección 10: Estructuras de Control. Autor: José Navarro. Referencias: C. Horstmann, Big Java Late Objects, Caps 3-4

Lección 10: Estructuras de Control. Autor: José Navarro. Referencias: C. Horstmann, Big Java Late Objects, Caps 3-4 Lección 10: Autor: José Navarro Referencias: C. Horstmann, Big Java Late Objects, Caps 3-4 C. Horstmann, Java Concepts, 6ta. Ed., Caps 5-6 Objetivos Bosquejo Explicar la operación de diferentes estructuras

Más detalles

DIAGRAMAS DE FLUJO: DFD

DIAGRAMAS DE FLUJO: DFD DIAGRAMAS DE FLUJO: DFD DFD es un programa de libre disposición para ayuda al diseño e implementación de algoritmos expresados en diagramas de flujo (DF). Además incorpora opciones para el depurado de

Más detalles

TIPOS DE VARIABLES EN PHP. DECLARACIÓN Y ASIGNACIÓN. LA INSTRUCCIÓN ECHO PARA INSERTAR TEXTO O CÓDIGO. (CU00816B)

TIPOS DE VARIABLES EN PHP. DECLARACIÓN Y ASIGNACIÓN. LA INSTRUCCIÓN ECHO PARA INSERTAR TEXTO O CÓDIGO. (CU00816B) APRENDERAPROGRAMAR.COM TIPOS DE VARIABLES EN PHP. DECLARACIÓN Y ASIGNACIÓN. LA INSTRUCCIÓN ECHO PARA INSERTAR TEXTO O CÓDIGO. (CU00816B) Sección: Cursos Categoría: Tutorial básico del programador web:

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

Primer Parcial Septiembre 5 de 2009

Primer Parcial Septiembre 5 de 2009 Primer Parcial Septiembre 5 de 2009 Algoritmos y Lenguajes II Reglas del juego Tal como se le dijo antes, durante este examen usted no puede pedir ABSOLUTAMENTE nada prestado a sus compañeros, ni hablar

Más detalles

Manual del Usuario de correo Webmail Consejo General de Educación INDICE

Manual del Usuario de correo Webmail Consejo General de Educación INDICE INDICE INDICE... 1 WEBMAIL... 3 QUE ES EL WEBMAIL?...3 COMO INGRESAR AL WEBMAIL?...3 1º Paso:...3 2º Paso:...4 3º Paso:...5 Bandeja de Entrada...5 De:...6 Fecha:...6 Asunto:...6 Tamaño:...6 CÓMO ESCRIBIR

Más detalles

Guía de uso para el registro de Planes y Programas de Capacitación y Adiestramiento vía internet

Guía de uso para el registro de Planes y Programas de Capacitación y Adiestramiento vía internet Guía de uso para el registro de Planes y Programas de Capacitación y Adiestramiento vía internet Versión 1.0 2 ÍNDICE 1. Introducción... 5 2. Solicitud y Administración de claves de acceso... 6 2.1 Solicitud

Más detalles

Programación: QBASIC

Programación: QBASIC 1. QBASIC Programación: QBASIC Guía del alumno Qbasic es una versión moderna del lenguaje BASIC. Se trata de un lenguaje de alto nivel. En un lenguaje de alto nivel las instrucciones tienen un formato

Más detalles

Uso de archivos en C++

Uso de archivos en C++ CICLO 02-2013 UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLOGICOS ESCUELA DE COMPUTACION GUIA DE LABORATORIO Nº 11 Nombre de la práctica: Uso de archivos en C++ Lugar de ejecución: Laboratorio de Informática

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

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

2.1.- EJEMPLO DE UN PROGRAMA FORTRAN

2.1.- EJEMPLO DE UN PROGRAMA FORTRAN 2.1.- EJEMPLO DE UN PROGRAMA FORTRAN Con el presente apartado comenzaremos a conocer cómo se escribe un programa en lenguaje FORTRAN bajo el entorno de programación FORTRAN. En primer lugar conozcamos

Más detalles

PL/SQL. Con PL/SQL vamos a poder programar las unidades de programa de la base de datos Oracle:

PL/SQL. Con PL/SQL vamos a poder programar las unidades de programa de la base de datos Oracle: PL/SQL (Procedural Language/Structured Query Language) PL/SQL es el lenguaje de programación que proporciona Oracle para extender el SQL estándar con otro tipo de instrucciones y elementos propios de los

Más detalles

!!!!!!!! !!!!! Práctica!4.! Programación!básica!en!C.! ! Grado!en!Ingeniería!!en!Electrónica!y!Automática!Industrial! ! Curso!2015H2016!

!!!!!!!! !!!!! Práctica!4.! Programación!básica!en!C.! ! Grado!en!Ingeniería!!en!Electrónica!y!Automática!Industrial! ! Curso!2015H2016! INFORMÁTICA Práctica4. ProgramaciónbásicaenC. GradoenIngenieríaenElectrónicayAutomáticaIndustrial Curso2015H2016 v2.1(18.09.2015) A continuación figuran una serie de ejercicios propuestos, agrupados por

Más detalles

TEMA 2. Agenda. Fundamentos de JAVA

TEMA 2. Agenda. Fundamentos de JAVA TEMA 2 Fundamentos de JAVA V1.3 Manuel Pereira González Agenda Introducción Historia de Java Características Principales Hello World Tipos Operadores Control de Flujo E/S básica Atributos y Métodos Resumen

Más detalles

Tipos de variables en Visual Basic (integer, single, double, string, object, etc.). Ejemplos. (CU00308A)

Tipos de variables en Visual Basic (integer, single, double, string, object, etc.). Ejemplos. (CU00308A) aprenderaprogramar.com Tipos de variables en Visual Basic (integer, single, double, string, object, etc.). Ejemplos. (CU00308A) Sección: Cursos Categoría: Curso Visual Basic Nivel I Fecha revisión: 2029

Más detalles

FUNDAMENTOS DE JAVA PARA LA CONCURRENCIA

FUNDAMENTOS DE JAVA PARA LA CONCURRENCIA FUNDAMENTOS DE JAVA PARA LA CONCURRENCIA CONTENIDO: La Plataforma J2SE Elementos Básicos de Programación Nociones de Orientación a Objetos E/S y Manejo Básico de Excepciones Otros Conceptos sobre POO:

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

Arreglos. // Incluir E/S y Librerías Standard #include #include

Arreglos. // Incluir E/S y Librerías Standard #include <stdlib.h> #include <stdio.h> Arreglos Introducción. En los temas anteriores se han estudiado los diferentes tipos de datos simples de C++, usados para representar valores simples como enteros, reales o caracteres. Sin embargo, en

Más detalles

ACTIONSCRIPT (AS) Proyectos II. Audiovisuales. Dpto. Escultura. UPV. [sintaxis elemental]

ACTIONSCRIPT (AS) Proyectos II. Audiovisuales. Dpto. Escultura. UPV. [sintaxis elemental] ACTIONSCRIPT (AS) Proyectos II. Audiovisuales. Dpto. Escultura. UPV. [sintaxis elemental] Action script es el lenguaje de programación que lleva incorporado el software de creación multimedia Macromedia

Más detalles

Apuntes de ACCESS. Apuntes de Access. Campos de Búsqueda:

Apuntes de ACCESS. Apuntes de Access. Campos de Búsqueda: Apuntes de ACCESS Campos de Búsqueda: Los campos de búsqueda permiten seleccionar el valor de un campo de una lista desplegable en lugar de tener que escribirlos. El usuario sólo tiene que elegir un valor

Más detalles

SuperNÓMINA 2014. Implantación

SuperNÓMINA 2014. Implantación SuperNÓMINA 2014 Implantación Este documento le ayudará a configurar los diferentes elementos que lo componen así como a efectuar el cálculo de nómina de una manera rápida y sencilla. 1. Alta de una empresa

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

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

Q-flow 3.1: Introducción a Q-flow

Q-flow 3.1: Introducción a Q-flow Q-flow 3.1: Introducción a Q-flow Código del manual: Qf310001ESP Versión: 1.1 Se aplica a: Q-flow 3.1 Última revisión: 13/12/2010 i Q f 3 1 0 0 0 1 E S P v 1. 1 Q - f l o w 3.1 Introducción a Q-flow Urudata

Más detalles

ALGORITMICA Y PROGRAMACION POR OBJETOS I

ALGORITMICA Y PROGRAMACION POR OBJETOS I ALGORITMICA Y PROGRAMACION POR OBJETOS I Nivel 2 Definiendo situaciones y manejando casos Marcela Hernández Hoyos Qué vamos a aprender en este nivel: Diferencia entre clase y objeto Modelar características

Más detalles

Práctica 1 El juego de los chinos

Práctica 1 El juego de los chinos Práctica 1 El juego de los chinos Fecha de entrega: 6 de diciembre Según una teoría, el conocido como juego de los chinos nació en el año 1787 en un pequeño pueblo de León. Felipe Valdeón Triguero, un

Más detalles

Examen Junio- Grupo A Lunes 17 de Junio - Programación en C++ Pág. 1

Examen Junio- Grupo A Lunes 17 de Junio - Programación en C++ Pág. 1 Examen Junio- Grupo A Lunes 17 de Junio - Programación en C++ Pág. 1 ÍNDICE ÍNDICE... 1 1.1 Ejercicio 1: Máquina Expendedora (3.5 ptos.)... 1 1.2 Ejercicio 2: Clase Circulo (1.0 pto.)... 3 1.3 Ejercicio

Más detalles

INFORMÁTICA. Práctica 5. Programación en C. Grado en Ingeniería en Electrónica y Automática Industrial. Curso 2013-2014. v1.0 (05.03.

INFORMÁTICA. Práctica 5. Programación en C. Grado en Ingeniería en Electrónica y Automática Industrial. Curso 2013-2014. v1.0 (05.03. INFORMÁTICA Práctica 5. Programación en C. Grado en Ingeniería en Electrónica y Automática Industrial Curso 2013-2014 v1.0 (05.03.14) A continuación figuran una serie de ejercicios propuestos, agrupados

Más detalles

BICSA E-BANKING. .Manual de Usuario

BICSA E-BANKING. .Manual de Usuario Click here to enter text.click here to enter text. Click here to enter text. BICSA E-BANKING.Manual de Usuario Publicado.22.09.2014. Publicado 22-sep-2014 Versión 0.1. Tabla de Contenido 1 ACERCA DE ESTE

Más detalles

Estructuras básicas de la programación en Java

Estructuras básicas de la programación en Java Estructuras básicas de la programación en Java ELO-329: Diseño y programación orientados a objetos Agustín J. González ELO329 1 Primer programa en Java Todo programa debe tener al menos una clase. Toda

Más detalles

Programación básica C++

Programación básica C++ Programación en Lenguaje C++ Programación básica C++ 6.3.1 Declaración de variables Introducción 6 Las variables sirven para identificar un determinado valor. Es importante tener en cuenta, que una variable

Más detalles

1.00 Clase 3. Tipos de datos en Java

1.00 Clase 3. Tipos de datos en Java 1.00 Clase 3 Tipos de datos básicos en Java, Estructuras de control Tipos de datos en Java 8 tipos de datos primitivos o integrados: - 4 tipos enteros (byte, short, int, long). - 2 tipos de coma flotante

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

Estructura de datos tipo vector.

Estructura de datos tipo vector. Estructura de datos tipo vector. Hemos empleado variables de distinto tipo para el almacenamiento de datos (variables int, float, String) En esta sección veremos otros tipos de variables que permiten almacenar

Más detalles

! Una variable declarada con final no puede volver a ser reinicializada. numero = 2;! ! Para definir constantes

! Una variable declarada con final no puede volver a ser reinicializada. numero = 2;! ! Para definir constantes Modificador final Introducción a la Programación IV Curso de Programación en Java Luis Guerra l.guerra@upm.es Enero 2012 Una variable declarada con final no puede volver a ser reinicializada final int

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

Operación Microsoft Access 97

Operación Microsoft Access 97 Trabajar con Informes Características de los informes Un informe es una forma efectiva de presentar los datos en formato impreso. Como se tiene control sobre el tamaño y el aspecto de todos los elementos

Más detalles

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS CICLO: 01/ 2015 Nombre de la Practica: Lugar de Ejecución: Tiempo Estimado: Materia: GUIA DE LABORATORIO #06 Introducción a Excel. Tablas y datos,

Más detalles

Tema 2: La clase string

Tema 2: La clase string : string Programación 2 Curso 2013-2014 Índice 1 Cadenas de caracteres en C 2 Entrada / salida 3 entre vectores de caracteres y string 4 5 Cadenas de caracteres en C En C, las cadenas de caracteres tienen

Más detalles