import java.applet.*; import java.awt.*; import java.awt.event.*;
|
|
- Vicente Montero Franco
- hace 6 años
- Vistas:
Transcripción
1 /* Conway s Game Of Life (in Spanish) Juego de la Vida v. 0.1 implementacion de Henrik Mitsch (henx@bigfoot.com) probablemente online en org/juegodelavida.html */ import java.applet.*; import java.awt.*; import java.awt.event.*; public class JuegoDeLaVida extends Applet implements Runnable, ActionListener, ItemListener { private CelulasEspacio mundo; // campo del juego private boolean trabajando; // variable por la gestion del hilo private Thread hilo; private int gentiempo; // tiempo para crear siguiente generacion private String pez="pez"; // Item para forma private String linea10="linea de 10 Celulas"; // Item para forma private String henx="nombre del autor"; private Choice seleccion; // Choice para Items private Button siguiente, vaciar, aleatorio, comenzar, terminar; // controles 1
2 private Panel botones; // Panel para controles public void init() { // funcion que esta llamado primero int tamanocelula; // tamano en pixles para la celula int numcol; // cantidad de columnas int numlin; // cantidad de lineas String param; // variable temporal para guardar el parametro del fichero HTML // configurar fondo setbackground (new Color(0x999999)); // leer parametros del fichero HTML param = getparameter("tamanocelula"); if (param==null) tamanocelula = 10; else tamanocelula = Integer.valueOf(param). intvalue(); param = getparameter("numcol"); if (param==null) numcol = 30; else numcol = Integer.valueOf(param).intValue(); param = getparameter("numlin"); if (param==null) 2
3 numlin = 30; else numlin = Integer.valueOf(param).intValue(); param = getparameter("gentiempo"); if (param==null) gentiempo = 200; else gentiempo = Integer.valueOf(param).intValue(); // formar Choice con formas seleccion = new Choice(); seleccion.additem(pez); seleccion.additem(linea10); seleccion.additem(henx); seleccion.additemlistener(this); // para recibir eventos // formar panel de control // cada boton recibe un ActionListener para coger eventos botones=new Panel(); botones.setlayout(new GridLayout(2,3)); botones.add(siguiente=new Button("Siguiente")); siguiente.addactionlistener(this); botones.add(vaciar=new Button("Vaciar")); vaciar.addactionlistener(this); botones.add(aleatorio=new Button("Aleatorio")); aleatorio.addactionlistener(this); 3
4 botones.add(comenzar=new Button("Comenzar")); comenzar.addactionlistener(this); botones.add(terminar=new Button("Terminar")); terminar.addactionlistener(this); botones.add(seleccion); // anadir choice de formas al final // formar juego (controles y campo de juego) setlayout(new BorderLayout()); add("north", botones); mundo = new CelulasEspacio(tamanoCelula, numcol, numlin); add("center", mundo); trabajando=false; // iniciar variable // anadir KeyListener para coger eventos del teclado // cada boton recibe un KeyListener siguiente.addkeylistener(new KeyAdapter() { public void keypressed(keyevent evento) { funcioncomunteclado(evento); ); vaciar.addkeylistener(new KeyAdapter() { public void keypressed(keyevent evento) { funcioncomunteclado(evento); ); 4
5 aleatorio.addkeylistener(new KeyAdapter() { public void keypressed(keyevent evento) { funcioncomunteclado(evento); ); comenzar.addkeylistener(new KeyAdapter() { public void keypressed(keyevent evento) { funcioncomunteclado(evento); ); terminar.addkeylistener(new KeyAdapter() { public void keypressed(keyevent evento) { funcioncomunteclado(evento); ); // anadir KeyListener al Choice seleccion.addkeylistener(new KeyAdapter() { public void keypressed(keyevent evento) { funcioncomunteclado(evento); ); // al final hay que anadir un Listener al campo del juego mundo.addkeylistener(new KeyAdapter() { public void keypressed(keyevent evento) { funcioncomunteclado(evento); ); 5
6 // tratar eventos del Teclado // aumentar o disminur velocidad de generacion private void funcioncomunteclado(keyevent evento) { int param = evento.getkeycode(); if (param == KeyEvent.VK_UP) gentiempo=gentiemp if (param == KeyEvent.VK_DOWN) { gentiempo=gentiempo-50; if (gentiempo<0) gentiempo=0; showstatus("retraso es "+gentiempo+" ms"); public void run() { // funcion que se llama cuando un hilo empieza a trabajar while (hilo!=null) { // mientras existe el hilo mundo.siguiente(); // calcular siguiente generacion mundo.repaint(); // dibujar generacion try { hilo.sleep(gentiempo); // descanzar hilo (tiempo en ms) catch (InterruptedException e) {; public void actionperformed(actionevent e) { // 6
7 metodo que se llama cuando acurra un evento del interfaz ActionListener (botones) String param=e.getactioncommand(); if (param.equals("siguiente")) { // siguiente mundo.siguiente(); mundo.repaint(); else if (param.equals("vaciar")) { // vaciar mundo.vaciar(); mundo.repaint(); else if (param.equals("aleatorio")) { // aleatorio mundo.llenaraleatorio(); mundo.repaint(); else if (param.equals("comenzar")&&!trabajando) { // comenzar hilo = new Thread(this); hilo.start(); // llama a funcion run() trabajando=true; else if (param.equals("terminar")&&trabajando) { // terminar hilo.stop(); trabajando=false; 7
8 public void itemstatechanged(itemevent e) { // este metodo esta llamado del ItemListener (Choice - formas) Object param=e.getitem(); if (param.equals(pez)) { // forma pez int forma[] = { 0,1, 0,3, 1,0, 2,0, 3,0, 3,3, 4,0, 4,1, 4,2 ; dibujarforma(5, 4, forma); else if (param.equals(linea10)) { // forma linea de 10 celulas int forma[] = { 0,0, 1,0, 2,0, 3,0, 4,0, 5,0, 6,0, 7,0, 8,0, 9,0; dibujarforma(10, 1, forma); else if (param.equals(henx)) { // forma de mi nombre int forma[] = {0,0, 0,1, 0,2, 0,3, 0,4, 1,2, 2,2, 3,2, 4,0, 4,1, 4,2, 4,3, 4,4, 7,0, 7,1, 7,2, 7,3, 7,4, 8,0, 9,0, 8,2, 8,4, 9,4, 12,0, 12,1, 12,2, 12,3, 12,4, 13,1, 14,2, 15,3, 16,0, 16,1, 16,2, 16,3, 16,4, 8
9 19,0, 20,1, 21,2, 22,3, 23,4, 19,4, 20,3, 22,1, 23,0; dibujarforma(23,5,forma); public String getappletinfo() { // return " Juego de la Vida v. 0.1 Henrik Mitsch (henx@bigfoot.com) no Copyright 2000"; public void dibujarforma(int formawidth, int formaheight, int forma[]) { if (!mundo.dibujarforma(formawidth, formaheight, forma)) showstatus("forma no cabe."); else { showstatus(""); mundo.repaint(); /* ************** Class CelulasEspacio ************ ******* */ class CelulasEspacio extends Canvas { 9
10 public int generacion; // variable para guardar la edad del mundo private int populacion; // para guardar el numero de celulas vivas private int tamanocelula; // tamono de una celula private int numcol; // numero de columnas private int numlin; // numero de lineas private boolean[][] celulas; // sirve para guardar el status actual de las celulas private int[][] celulasbuffer; // sirve para calcular el numero de vecions para calcular la siguiente generacion private Image fueradepantallaimagen; // sirve para accelerar el metodo paint() private Dimension fueradepantallatamano; // accelerar paint() private Graphics fueradepantallagrafica; // accelerar paint() private int numcelulas; // sirve para rellenar el campo con celulas aleatorias public CelulasEspacio(int tamanocelula, int numcol, 10
11 int numlin) { // constructor de la clase celulas = new boolean[numcol][numlin]; celulasbuffer = new int[numcol][numlin]; this.tamanocelula = tamanocelula; // transferir las variables del input a las variables de esta clase this.numcol = numcol; this.numlin = numlin; this.numcelulas = numcol*numlin; setbounds(0, 0, tamanocelula*numcol-1, tamanocelula numlin-1); // resize component vaciar(); // borrar todas celulas // anadir MousListener para coger eventos del raton // mouseclicked es una "Clase Anonima" para no tener // implementar el interfaz MouseListener this.addmouselistener(new MouseAdapter() { public void mouseclicked(mouseevent evento) { eventomouseclicked(evento); ); public void eventomouseclicked(mouseevent evento) { // poner la celula al reves (invertir) int x = evento.getx(); // coger coordinatas int y = evento.gety(); try { 11
12 celulas[x/tamanocelula][y/tamanocelula] =!celulas[ x/tamanocelula][y/tamanocelula]; // invertir celula catch (Exception e) { // catch excepcion en caso de que el usuario // hace un click alrededor del campo del juego repaint(); public final synchronized void update(graphics g) { // funcion llamado por repaint() /* funciona mucho mas rapido con este algoritmo que con paint(g). algoritmo encontrado en un FAQ de java ( */ Dimension d = getsize(); if ((fueradepantallaimagen == null) (d.width!= fueradepantallatamano.width) (d.height!= fueradepantallatamano.height)) { fueradepantallaimagen = createimage(d.width, d. height); fueradepantallatamano = d; fueradepantallagrafica = fueradepantallaimagen. getgraphics(); fueradepantallagrafica.clearrect(0,0, d.width, d. 12
13 height); paint(fueradepantallagrafica); g.drawimage(fueradepantallaimagen, 0, 0, null); public void paint(graphics g) { // dibujar el mundo // dibujar fondo g.setcolor(color.gray); g.fillrect(0, 0, tamanocelula*numcol-1, tamanocelula* numlin-1); // dibujar red (grid) g.setcolor(getbackground()); for (int x=1; x<numcol; x++) { g.drawline(x*tamanocelula-1, 0, x*tamanocelula-1, tamanocelula*numlin-1); for (int y=1; y<numlin; y++) { g.drawline(0, y*tamanocelula-1, tamanocelula* numcol-1, y*tamanocelula-1); // dibujar celulas vivas g.setcolor(color.green); for (int y=0; y<numlin; y++) for (int x=0; x<numcol; x++) if (celulas[x][y]) g.fillrect(x*tamanocelula, y*tamanocelula, 13
14 tamanocelula-1, tamanocelula-1); // escribir generacion y populacion g.setcolor(color.white); contarpopulacion(); g.drawstring("generacion: "+generacion+" Populacion: "+populacion, 1, numlin*tamanocelula-2); public void vaciar() { // borrar mundo generacion = 0; populacion = 0; for (int x=0; x<numcol; x++) for (int y=0; y<numlin; y++) celulas[x][y] = false; public void llenaraleatorio() { // llenar mundo con celulas aleatorias int x; // coordinatas de la celula int y; int cantidad; // numero de celulas que van a vivir en este mundo vaciar(); // borrar mundo generacion++; // crear primera generacion do { 14
15 cantidad = (int) (Math.random()*numCelulas); while (cantidad<numcelulas*0.3 cantidad> numcelulas*0.7); /* el while asegura que no haya ni demasiadas pocas ni demasiadas celulas vivas (entre 30% y 70%). */ for (int i=0; i<=cantidad; i++) { x = (int) (Math.random()*numCol); // generar coordinatas y = (int) (Math.random()*numLin); // aleatorias celulas[x][y] = true; // poner la celula viva public void siguiente() { // crear la siguiente generacion int x; // variables da ayuda int y; generacion++; // aumentar generacion // borrar el buffer for (x=0; x<numcol; x++) for (y=0; y<numlin; y++) celulasbuffer[x][y] = 0; // contar vecinos de celulas lejos de la esquina 15
16 for (x=1; x<numcol-1; x++) { for (y=1; y<numlin-1; y++) { if (celulas[x][y]) { celulasbuffer[x-1][y-1]++; celulasbuffer[x][y-1]++; celulasbuffer[x+1][y-1]++; celulasbuffer[x-1][y]++; celulasbuffer[x+1][y]++; celulasbuffer[x-1][y+1]++; celulasbuffer[x][y+1]++; celulasbuffer[x+1][y+1]++; // contar vecinos de celulas en las esquina x=1; y=0; // empezar en (1,0) int dx=1; int dy=0; while (true) { if (celulas[x][y]) { if (x>0) { if (y>0) celulasbuffer[x-1][y-1]++; if (y<numlin-1) celulasbuffer[x-1][y+1]++; celulasbuffer[x-1][y]++; if (x<numcol-1) { 16
17 if (y<numlin-1) celulasbuffer[x+1][y+1]++; if (y>0) celulasbuffer[x+1][y-1]++; celulasbuffer[x+1][y]++; if (y>0) celulasbuffer[x][y-1]++; if (y<numlin-1) celulasbuffer[x][y+1]++; // girar en el sentio del reloj en colision con esquina if (x==numcol-1 && y==0) { dx=0; dy=1; else if (x==numcol-1 && y==numlin-1) { dx=-1; dy=0; else if (x==0 && y==numlin-1) { dx=0; dy=-1; else if (x==0 && y==0) { // estamos listo break; 17
18 x=x+dx; y=y+dy; // algoritmo Juego de la Vida for (x=0; x<numcol; x++) { for (y=0; y<numlin; y++) { switch (celulasbuffer[x][y]) { case 2: break; // no cambio case 3: celulas[x][y] = true; break; // nace vida default: celulas[x][y] = false; break; // muere la celula contarpopulacion(); public void contarpopulacion() { // contar la populacion populacion=0; for (int x=0; x<numcol; x++) for (int y=0; y<numlin; y++) if (celulas[x][y]) 18
19 populacion++; public boolean dibujarforma(int formawidth, int formaheight, int forma[]) { // sirve para dibujar las formas de la seleccion (Choice) int x0; // variables da ayuda int y0; // para encontrar el centro del campo (offset) if (formawidth>numcol formaheight>numlin) return false; // forma no cabe x0 = (numcol-formawidth)/2; // calcular centro y0 = (numlin-formaheight)/2; vaciar(); for (int i=0; i<forma.length; i=i+2) // meter forma celulas[x0+forma[i]][y0+forma[i+1]] = true; return true; 19
Programación Java Curso 2006-1 C Draw
Programación Java Curso 2006-1 C Draw FIUBA Introducción: Prof.. María Feldgen Ing. Osvaldo Clúa En Java, para dibujar se usa el contexto gráfico de un componente. Según las plataformas, este contexto
Más detallesPráctica 1. Monitores en Java.
Práctica 1 - Programación Concurrente 3º I.S. Pág: 1/15 Práctica 1. Monitores en Java. Programación Concurrente. 3º I.S. Dpto. Lenguajes y Sistemas Informáticos Escuela Técnica Superior de Ingeniería Informática
Más detallesCreación de Applets Simples
Seminario Creación de Applets Simples Junio 2004 Michael González: mgh@unican.es GRUPO DE COMPUTADORES Y TIEMPO REAL Michael González Harbour 1 Creación de Applets Simples 1. Introducción 2. Estructura
Más detallesThreads. La plataforma JAVA soporta programas multhreading a través del lenguaje, de librerías y del sistema de ejecución. Dos.
Threads Un thread es un flujo de control secuencial dentro de un programa. A los threads también se los conoce como procesos livianos ó contextos de ejecución. Un thread es similar a un programa secuencial:
Más detallesI. Introducción a la programación orientada a objetos y al lenguaje JAVA Colegio Reuven Feuerstein --Javier Navarro
I. Introducción a la programación orientada a objetos y al lenguaje JAVA Colegio Reuven Feuerstein --Javier Navarro Lectura de Datos Dentro de un applet es sencillo tomar algún dato del usuario para realizar
Más detallesUnidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones
Unidad Didáctica 2 Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 1.0.3 Índice
Más detallesDesarrollo de aplicaciones gráficas
Desarrollo de aplicaciones gráficas M.C. Jorge Eduardo Ibarra Esquer Universidad Autónoma de Baja California jorgeeie@uabc.mx Febrero de 2006 Aplicaciones gráficas en Java Estas aplicaciones pueden dividirse
Más detallesIntroducción a Java LSUB. 30 de enero de 2013 GSYC
Introducción a Java LSUB GSYC 30 de enero de 2013 (cc) 2013 Laboratorio de Sistemas, Algunos derechos reservados. Este trabajo se entrega bajo la licencia Creative Commons Reconocimiento - NoComercial
Más detallesEjercicios de Programación Tema 7. Programación Orientada a Objetos
Ejercicios de Programación Tema 7. Programación Orientada a Objetos 22 de diciembre de 2013 1. Haz una clase llamada Agenda para manejar una agenda de teléfonos. Los objetos instanciados a partir de esa
Más detallesCAPÍTULO V. APLICACIÓN WEB PARA EL CONOCIMIENTO Y CONVERSIÓN DE LAS UNIDADES DE MEDIDA
CAPÍTULO V. APLICACIÓN WEB PARA EL CONOCIMIENTO Y CONVERSIÓN DE LAS UNIDADES DE MEDIDA 5.1. Introducción Este capítulo está destinado a la presentación de la herramienta software construida en lenguaje
Más detallesUniversidad Autónoma de Tlaxcala. M.C. José Juan Hernández Mora. Primera Sesión
Universidad Autónoma de Tlaxcala Introducción al lenguaje JAVA Primera Sesión 1. Introducción a la programación orientada a objeto 2. Introducción al lenguaje Java 3. Primer programa en Java 4. Primer
Más detallesProgramación de Eventos
Programación de Eventos Un evento es un suceso que ocurre dentro del contexto de la ejecución de un programa. Por ejemplo, se presiona un botón, se modifica una caja de texto, se selecciona una opción
Más detallesIII SEMANAS GESTIÓN DE EVENTOS PROGRAMACIÓN II CICLO. Ing. Manuel Jesús Sánchez Chero Profesor del Curso
GESTIÓN DE EVENTOS CURSO: Elaborado por: TALLER DE PROGRAMACIÓN II Ing. Manuel Jesús Sánchez Chero Profesor del Curso CICLO III SEMANAS Material Didáctico para uso exclusivo en clase INTRODUCCIÓN La gestión
Más detallesProgramación Orientada a Objetos, 3 er curso Ejercicios resueltos
Programación Orientada a Objetos, 3 er curso Ejercicios resueltos 1. Cómo es posible crear objetos de una clase cuyos constructores son todos privados? a) Definiendo un método estático público en la clase
Más detallesExamen de Programación II (Ingeniería Informática)
Examen de Programación II (Ingeniería Informática) Junio 2008 1) Lenguaje C 1.a) (1 punto) Escribir una función C que reciba dos strings como parámetros y retorne un nuevo string formado por los caracteres
Más detalles75-62 Técnicas de Programación Concurrente II 2004 java Threads
75-62 Técnicas de Programación Concurrente II 2004 java Threads FIUBA Ing. Osvaldo Clúa Bibliografía: tutorial de Java en http://java.sun.com Un buen libro (algo teórico) es Garg: Concurrent and Distributed
Más detallesJAVA: Applets. Diseño de aplicaciones web. mperez@fi.upm.es
JAVA: Applets Diseño de aplicaciones web mperez@fi.upm.es Características de Java (I) Simple El programador no tiene que gestionar la memoria! Orientado a Objetos Encapsulación de datos y reutilización.
Más detallesTema 7. Construcción de Applets en Java
Programación en Java Tema 7. Construcción de Applets en Java Luis Rodríguez Baena Facultad de Informática Applets Aplicación Java que se ejecuta dentro de un cliente web para ampliar las capacidades de
Más detallesvoid main(void) { string lname; list <string> lnamelist; cout << "Please enter your list of last names finishing with `.`"<<endl;
Segundo Certamen 1.- Haga uso de la información adjunta y desarrolle un programa en C++ que lea apellidos de teclado y los almacene en una lista. Luego se pide listar los apellidos en orden alfabético
Más detallesVariables. Una variable no es más que un nombre simbólico que identifica una dirección de memoria: vs.
Variables Una variable no es más que un nombre simbólico que identifica una dirección de memoria: Suma el contenido de la posición 3001 y la 3002 y lo almacenas en la posición 3003 vs. total = cantidad1
Más detallesCentro Asociado Palma de Mallorca. Antonio Rivero Cuesta
Centro Asociado Palma de Mallorca Antonio Rivero Cuesta La Sintaxis de Java I... 5 Tipos de datos... 6 Tipos de datos simples... 7 Operadores... 11 Operadores Aritméticos... 12 Operadores relacionales...
Más detallesPráctica 4: Java Remote Method Invocation (RMI)
Práctica 4: Java Remote Method Invocation (RMI) Aplicaciones Telemáticas II Introducción Hasta el momento hemos visto aplicaciones remotas donde un cliente utiliza un objeto remoto que ha sido publicado
Más detallesBibliografía (Java) Java: Introducción a Java
1 2 De a Contenido Introducción a Variables, tipos de datos y operadores Sentencias de control Subprogramas Tablas y matrices Excepciones Paquetes 3 4 Bibliografía () : Introducción a L. Lemay, C. Perkins.
Más detallesAPELLIDOS:... NOMBRE:... GRUPO:... NÚMERO DE EXPEDIENTE:...
Cuadernillo de examen ASIGNATURA Laboratorio de Sistemas Operativos Abiertos (Java) CÓDIGO 321 CONVOCATORIA Extraordinaria de Septiembre de 2003 PLAN DE ESTUDIOS 1996 ESPECIALIDAD Sistemas CURSO 2002/2003
Más detallesCarlos Montenegro. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas
2 - Introducción al lenguaje Java, identificadores y comentarios. Carlos Montenegro Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas 1. Introducción: Java tiene como todos
Más detallesTema 7.- Fundamentos de la Programación Orientada a Objetos
Tema 7.- Fundamentos de la Programación Orientada a Objetos 7 de enero de 2014 Objetivos Saber definir clases propias. Saber crear objetos de una clase determinada e interactuar con ellos (Problema 1).
Más detallesINGENIERÍA DEL SOFTWARE. 4º ING. INFORMÁTICA (UPV/EHU) 31 de MAYO de 2001
INGENIERÍA DEL SOFTWARE. 4º ING. INFORMÁTICA (UPV/EHU) 31 de MAYO de 2001 NOMBRE: GRUPO: 1.- Es posible que un sistema que no ofrezca mecanismos de HERENCIA presente la característica conocida por POLIMORFISMO?
Más detallesProgramación Java. Práctica 11. Javier García de Jalón José Ignacio Rodríguez Alfonso Brazález Alberto Larzabal Jesús Calleja Jon García
Práctica 11 Programación Java San Sebastián, mayo 1999 Javier García de Jalón José Ignacio Rodríguez Alfonso Brazález Alberto Larzabal Jesús Calleja Jon García Informática 2: Práctica nº 11 página 1 INDICE
Más detallesInterfaz Gráfica de Usuario (GUI)
Interfaz Gráfica de Usuario (GUI) Unidad: 2 Laboratorio de Programación Universidad Nacional de la Patagonia Austral Unidad Académica Río Gallegos Indice Los administradores de diseño (Layouts) Características
Más detallesINTERFAZ GRÁFICO DE USUARIO APLICACIONES DE EJEMPLO
La Güeb de Joaquín Programación JAVA INTERFAZ GRÁFICO DE USUARIO APLICACIONES DE EJEMPLO 1 EJEMPLO: CALCULADORA 1 EJEMPLO: CALCULADORA 1.1 Definición del ejemplo 1.2 Diseño del interfaz gráfico de usuario
Más detallesElementos 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 detallesIntroducción a la programación orientada a objetos y al lenguaje JAVA Colegio Reuven Feuerstein --Javier Navarro
Introducción a la programación orientada a objetos y al lenguaje JAVA Colegio Reuven Feuerstein --Javier Navarro Estatuto if Este estatuto nos sirve para realizar alguna(s) instrucción(es) en vez de otra(s)
Más detallesINTERFAZ GRÁFICO DE USUARIO
Programación JAVA INTERFAZ GRÁFICO DE USUARIO 2 - Referencia Bibliográfica Autor Adolfo Aladró García Publicado en la revista Solo Programadores num. 118 Ejemplos copiados del libro Java 2 - Curso de Programación
Más detallesMultitarea en Java. Rafa Caballero - UCM
Multitarea en Java Rafa Caballero - UCM Programa Monoproceso (monotarea) En cada momento hay una única instrucción ejecutándose Se dice que el programa es monotarea, o monoproceso o monohebra (o single
Más detallesIdentificadores, 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 detallesMétodos. Los métodos pueden ser de un tipo específico como int, double, String, Cuenta, etc. o simplemente no tener algún tipo como void.
Métodos Los métodos son utilizados para definir un grupo de instrucciones que son separadas y que definen un comportamiento, que requieren en algunos casos de valores para su proceso. Un método es algo
Más detallesFUNDAMENTOS 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 detallesMONITORES EN JAVA. Antonio Tomeu Control de la Concurrencia en Java: API Estándar
MONITORES EN JAVA Un monitor es un objeto que implementa acceso bajo e.m. a todos sus métodos, y provee sincronización En Java, son objetos de una clase cuyos métodos públicos son todos synchronized Un
Más detallesIntroducció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 detallesAgenda. Contenedores y componentes
Agenda Tipos de objetos y clases de la GUI Guía detallada para crear una interfaz gráfica de usuario Guía detallada para la gestión de eventos Problema 1 del boletín 5 Problema 2 del boletín 5 Contenedores
Más detallesIntroducción al desarrollo de RIA's con Adobe Flex 3.0 Dia 4
Introducción al desarrollo de RIA's con Adobe Flex 3.0 Dia 4 by S. Muñoz-Gutiérrez stalinmunoz@yahoo.com, informes@grupolinda.org Grupo LINDA Facultad de Ingeniería UNAM México Octubre-Diciembre 2009 Identificando
Más detallesINTERFAZ GRÁFICO DE USUARIO
Programación JAVA INTERFAZ GRÁFICO DE USUARIO 3 - Referencia Bibliográfica Autor Adolfo Aladró García Publicado en la revista Solo Programadores num. 119 Ejemplos copiados del libro Java 2 - Curso de Programación
Más detallesProgramació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 detallesProgramación Orientada a Objetos. Antecedentes del Lenguaje Java
Programación Orientada a Objetos La Programación Orientada a Objetos es un paradigma de programación diferente a la Programación Estructurada o a la misma Programación Procedural al que la mayoría de los
Más detallesI. Introducción a la programación orientada a objetos y al lenguaje JAVA Colegio Reuven Feuerstein Javier Navarro
I. Introducción a la programación orientada a objetos y al lenguaje JAVA Colegio Reuven Feuerstein Javier Navarro Utilizando Clases Definidas en Java La manera de utilizar una clase previamente definida
Más detallesIntroducción a Java (II) Dr. (c) Noé Alejandro Castro Sánchez
Introducción a Java (II) Dr. (c) Noé Alejandro Castro Sánchez Sintaxis de Java Sintaxis Define las reglas que determinar el uso de palabras clave, operadores y variables para construir y evaluar expresiones.
Más detallesTEMA 5: Control de la Concurrencia en Java (API Estándar)
TEMA 5: Control de la Concurrencia en Java (API Estándar) CONTENIDO Exclusión Mutua con código synchronized. Exclusión Mutua con métodos synchronized. Protocolos de Control de la Exclusión Mutua. Interbloqueos
Más detallesAplicaciones Java. Juan Manuel Fernández Peña Curso 2011, 2013
Aplicaciones Java Juan Manuel Fernández Peña Curso 2011, 2013 Aplicación Una aplicación es una colección de clases y recursos adicionales, con un punto de inicio. El punto de inicio está dado por el método
Más detallesTutorial 1: Desarrollo de un plugin
Tutorial 1: Desarrollo de un plugin En este tutorial introductorio se creará un plugin siguiendo una de las plantillas que ofrece Eclipse. Concretamente se extenderá una vista para mostrar cierta información
Más detallesFicheros de acceso aleatorio
Ficheros de acceso aleatorio Los ficheros con los que hemos trabajado hasta ahora (ya sean ficheros de texto o ficheros binarios con objetos serializados) no resultan adecuados para muchas aplicaciones
Más detallesINDICE Prefacio 1. Fundamentos de Java 2. Introducción a los tipos de datos y operadores
INDICE Prefacio XVII 1. Fundamentos de Java 1 Los orígenes de Java 2 Como se relaciona Java con C y C++ 4 Contribución de Java a Internet Los Apples de Java y aplicaciones 6 Seguridad Portabilidad 7 La
Más detallesProgramació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 detallesJava RMI. las RPC de Java. Parte I. Luis Fernando Llana Díaz. Departamento de Sistemas Informáticos y ProgramaciónUniversidad Complutense de Madrid
las RPC de Java. Parte I Departamento de Sistemas Informáticos y Programación Universidad Complutense de Madrid de marzo de 006 RMI y RPC RPC: Remote Procedure Call. RMI y RPC RPC: Remote Procedure Call.
Más detallesInteracción con el Usuario Gestión de Eventos
Interacción con el Usuario Gestión de Eventos Presentación basada en: 1. Como Programar en Java. Deitel y Deitel. Ed. Prentice-Hall. 1988 2. Java 2., Curso de programación. Fco. Javier Ceballos. Ed. Alfoomega&RA-MA,
Más detallesEXAMEN PROGRAMACIÓN 21 de Septiembre de 2007 INGENIERÍA INFORMÁTICA Primera parte: Cuestiones 1,5 horas
Apellidos Nombre Firma NIA Grupo EXAMEN PROGRAMACIÓN 21 de Septiembre de 2007 INGENIERÍA INFORMÁTICA Primera parte: Cuestiones 1,5 horas Pregunta 1 (0,5 puntos).- Indicar si las siguientes afirmaciones
Más detallesPráctica 18c. Práctica 18c. José M. Ordax
Práctica 18c José M. Ordax chemi@javahispano.org 1 Copyright 2004 José M. Ordax Este documento puede ser distribuido solo bajo los términos y condiciones de la Licencia de Documentación de javahispano
Más detallesObjetivo 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 detalles2. 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 detallesSolució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 detallesPrimer 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 detallesProgramación Concurrente en Java
Hebras y monitores Departamento de Sistemas Informáticos y Programación Universidad Complutense de Madrid 21 de marzo de 2006 Threads Extendiendo la clase java.lang.thread. public class PrThread extends
Más detallesLo 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 detallesLenguaje de programación con JAVA
Pág. N. 1 Lenguaje de programación con JAVA Familia: Editorial: Autor: Tecnología de la información y computación Macro Eric Gustavo Coronel Castillo ISBN: 978-612-304-288-2 N. de páginas: 360 Edición:
Más detallesNIVEL 15: ESTRUCTURAS RECURSIVAS BINARIAS
1 NIVEL 15: ESTRUCTURAS RECURSIVAS BINARIAS Árboles Binarios y Árboles Binarios Ordenados 2 Contenido Árboles binarios Iteradores Árboles binarios ordenados 3 Árboles binarios Algunas definiciones para
Más detallesClases Java para comunicaciones en red
Clases Java para comunicaciones en red Lenguajes y Herramientas de Programación Universidad de La Laguna Programa de Doctorado de Física e Informática Escuela Técnica Superior Superior de Ingeniería Informática
Más detallesApplets y Aplicaciones
Applets y Aplicaciones En JAVA es posible crear dos tipos de programas: Applets Son pequeños programas que requieren de un browser W 3 JAVA-compatibe para ejecutarse (actualmente, Netscape, Microsoft Explorer,
Más detallesConstrucción dinámica de menús en Java. La clase MiMenu.
Construcción dinámica de menús en Java. La clase MiMenu. Ernesto Ponsot Balaguer π Mérida, Diciembre de 2004 Resumen.- Se presenta la discusión, el diseño e implantación de un objeto genérico Java, bautizado
Más detallesProgramación Concurrente en Java: Threads. Ejemplos de programación concurrente. Luis Fernando Llana Díaz. 24 de abril de 2008
Departamento de Sistemas Informáticos y Computación Universidad Complutense de Madrid de abril de 00 Ejemplos de programación concurrente En un sistema operativo, diversos programas compiten por los recursos
Más detallesTema 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 detallesProgramación de sistemas
Programación de sistemas Interfaces Gráficas I. Conceptos básicos II. Eventos Julio Villena Román MATERIALES BASADOS EN EL TRABAJO DE DIFERENTES AUTORES: José Jesús García Rueda,
Más detallesINDICE Parte 1. Visual Basic Capitulo 1. Qué es Visual Basic? Capitulo 22. Mi Primera Aplicación Capitulo 3. Elementos del lenguaje
INDICE Prólogo XV Parte 1. Visual Basic 1 Capitulo 1. Qué es Visual Basic? 3 Introducción 3 Como crear una aplicación 5 Otras facilidades de Visual Basic 6 Un lenguaje de alto nivel 9 Menús 10 Colores
Más detallesIntroducción a la JMF
Introducción a la JMF 2º Ingeniero Técnico de Telecomunicación Imagen y Sonido Departamento de Ingeniería Telemática Universidad Carlos III de Madrid 2 Índice Presentación de la JMF Modelo de procesamiento
Más detallesConceptos a tratar. Fundamentos de la Programación Orientada a Objetos Ampliación sobre clases y objetos
Fundamentos de la Programación Orientada a Objetos Ampliación sobre clases y objetos Programación Orientada a Objetos Facultad de Informática Dep. Ingeniería del Software e Inteligencia Artificial Universidad
Más detallesNormalmente, los programas son ejecutados de forma secuencial. Único flujo de control
Hilos BUAP Introducción Normalmente, los programas son ejecutados de forma secuencial Único flujo de control Un programa con un único flujo de control, ejecuta sólo una tarea (hilo) Dr. Ivan Olmos 2 Introducción
Más detallesAdministración Local Soluciones
SISTEMA INTEGRADO DE GESTIÓN DE EXPEDIENTES MODULAR (SIGM) FUNCIONALIDAD ANTIVIRUS (MÓDULO TRAMITACIÓN ELECTRÓNICA) SIGM v3 Administración Local Soluciones Control de versiones Versión Fecha aprobación
Más detallesElementos del lenguaje Java
Elementos del Lenguaje Java Programación Orientada a Objetos Facultad de Informática Dep. Sistemas Informáticos y Programación Universidad Complutense Madrid Elementos del lenguaje Java Un programa Java
Más detallesFRAMEWORK 2 Recepción de SMS
FRAMEWORK 2 Versión 1.1 Área de Integración y Arquitectura de Aplicaciones Hoja de Control Título Documento de Referencia Responsable FW2_MUS_Recepcion_SMS Área de Integración y Arquitectura de Aplicaciones
Más detalles- Compilar y ejecutar programas en Java - Estructura básica de una clase - El comando javac - El comando java - Introducción al IDE de desarrollo
- Introdución a Java - Breve historia de Java - Características del lenguaje Java - Estructura del JDK 1.6 - Documentación del API (JavaDoc) - Instalar y configurar el ambiente de desarrollo - La variable
Más detalles1 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 detallesRepaso 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 detallesEstructura de las Aplicaciones Orientadas a Objetos El patrón Modelo-Vista-Controlador (MVC)
Estructura de las Aplicaciones Orientadas a Objetos El patrón Modelo-Vista-Controlador (MVC) Programación Orientada a Objetos Facultad de Informática Dep. Ingeniería del Software e Inteligencia Artificial
Más detallesJames 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 detallesJavaScript. 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 detallesPlugin para NetBeans que realiza migración de una base de datos postgresql a couchdb.
CAPITULO POSTGRESQL TO COUCHDB PLUGINS Modulo: p2cnb Plugin para NetBeans que realiza migración de una base de datos postgresql a couchdb. 1. Crear el nuevo proyecto. Seleccionar Modulos NetBeans y en
Más detallesPrograma 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 detalles1. Cuántas sentencias hay en la secuencia principal del siguiente programa?
1. Cuántas sentencias hay en la secuencia principal del siguiente programa? public class PruebaSwitch { System.out.print ("Opcion: "); case 3: System.out.println ("miércoles "); A. 1. B. 4. C. Más de 10.
Más detallesAPPLETS en JAVA. A continuación se muestran algunos ejemplos. 1. Programa que calcula el factorial de 1 número.
APPLETS en JAVA Las applets (miniaplicación) son programas escritos en Java que sirven para "dar vida" a las páginas Web (interacción en tiempo real, inclusión de animaciones, sonidos...), de ahí su potencia.
Más detallesTecnología WEB. Programación en el lado del cliente
Tecnología WEB Programación en el lado del cliente Antonio da Silva Fariña adasilva@diatel.upm.es 3 Programación en el lado del cliente 3.1 Introducción Uno de los principales problemas de la ejecución
Más detallesProgramación J2ME con Netbeans. Interfaz gráfico para el tetris Septiembre de 2006
Programación J2ME con Netbeans Interfaz gráfico para el tetris Septiembre de 2006 Curso de Formación Continua de Programación de dispositivos móviles con Java (4 a edición) Septiembre de 2006 Índice 1.
Más detallesInstrucciones de control
Instrucciones de control Instrucciones de control de flujo C# ofrece un conjunto de sentencias similar al de C, C++ o Java. A continuación se estudian muy brevemente cada una de ellas. if if se utiliza
Más detallesNombran variables, funciones, clases y objetos
3.El lenguaje Java 3.1 Identificadores - sintaxis - tipos primitivos 3.2 Operadores 3.3 Control de flujo 3.4 Clase Array El lenguaje de programación Java 1 3.1 Identificadores Nombran variables, funciones,
Más detallesDesarrollo de Aplicaciones para Android
Desarrollo de Aplicaciones para Android Sesión 7: Servicios de red Desarrollo de Aplicaciones para Android Depto. Ciencia de la Computación e IA Servicios de red-1 Puntos a tratar Conexiones HTTP Parsing
Más detallesPrá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 detallesCompiladores e Intérpretes Proyecto N 1 Sintaxis de MiniJava Segundo Cuatrimestre de 2015
Departamento de Cs. e Ingeniería de la Computación Universidad Nacional del Sur Compiladores e Intérpretes Proyecto N 1 Sintaxis de MiniJava Segundo Cuatrimestre de 2015 1. Introducción Este documento
Más detallesUniversidad Carlos III de Madrid Departamento de Ingeniería Telemática. Swing
Universidad Carlos III de Madrid Departamento de Ingeniería Telemática Swing Andrés Marín López Jesús Arias Fisteus Laboratorio de Aplicaciones Telemáticas 2 Índice Introducción a Swing Componentes Layouts
Más detallesLA ESTRUCTURA DE DATOS PILA EN JAVA. CLASE STACK DEL API JAVA. EJEMPLO Y EJERCICIOS RESUELTOS. (CU00923C)
APRENDERAPROGRAMAR.COM LA ESTRUCTURA DE DATOS PILA EN JAVA. CLASE STACK DEL API JAVA. EJEMPLO Y EJERCICIOS RESUELTOS. (CU00923C) Sección: Cursos Categoría: Lenguaje de programación Java nivel avanzado
Más detallesIntroducción a los servicios web 2012 Marcelino Rodríguez Suárez http://www.marce.com Un servicio web publica su descripción en un documento XML en
Introducción a los servicios web 2012 Marcelino Rodríguez Suárez http://www.marce.com Un servicio web publica su descripción en un documento XML en lenguaje WSDL. De esta forma es conocido y utilizado
Más detallesHoja 4: Solución. public String tostring() { return "("+getx()+", "+gety()+")"+" Lado: "+getlx();
Hoja 4: Solución Ejercicio 1 package figuras; public class Cuadrado extends Rectángulo { public Cuadrado(int x, int y, int ancho) { super(x,y,ancho,ancho); public String tostring() { return "("+getx()+",
Más detallesProgramación Orientada a Eventos
Programación Orientada a Eventos Técnicas de Programación Santiago Pavón V:2012.03.13 Programas Secuénciales El flujo de ejecución del programa sigue la secuencia de sentencias que lo forman. El estado
Más detallesClase 24. Caso práctico: Creación de una calculadora simple con notación postfijo. Objetivos
Clase 24 Caso práctico: Creación de una calculadora simple con notación postfijo Objetivos Construir una calculadora que sirva para demostrar cómo dividir la funcionalidad en clases significativas Explicar
Más detalles