3 Traduci Daxcv
-
Upload
giiaan-tu-niniow -
Category
Documents
-
view
218 -
download
0
description
Transcript of 3 Traduci Daxcv
![Page 1: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/1.jpg)
2003 Prentice Hall, Inc. Todos los derechos reservados.
1
Capítulo 3 - Introducción a los applets de Java
Contorno
3.1 Introducción
3.2 Los applets muestra del Kit de desarrollo de software Java 2
3.3 simple Java Applet: Drenaje de una cadena
3.4 Cuerdas y dibujar líneas
3.5 Adición de números en coma flotante
3.6 Java Applet Internet y la World Wide Web Recursos
3.7 (Ejemplo práctico opcional) Acerca de los objetos: Identificar las clases en un
Planteamiento del problema
![Page 2: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/2.jpg)
2003 Prentice Hall, Inc. Todos los derechos reservados.
2
3.1 Introducción Applet Programa que se ejecuta en
appletviewer (utilidad de prueba para los applets)
Navegador Web (IE, Communicator)
Ejecuta cuando HTML (Hypertext Markup Language) documento que contiene applet se abrió y descargar
Las aplicaciones se ejecutan en ventanas de comandos
Notas Mimic varias características del capítulo 2 para reforzarlos
![Page 3: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/3.jpg)
Centrarse en los conceptos fundamentales de programación primero
Explicaciones vendrán después
2003 Prentice Hall, Inc. Todos los derechos reservados.
3
3.2 Los applets muestra del Kit de desarrollo de software Java 2
Los applets de ejemplo Ofrecido en Java 2 Software Development Kit (J2SDK)
El código fuente incluido (archivos .java)
Estudio y código fuente imitar para aprender nuevas características
Todos los programadores comienzan imitando programas
existentes
Situado en el directorio demo de J2SDK instalar
![Page 4: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/4.jpg)
Puede descargar demos y J2SDK desde
java.sun.com/j2se/1.4.1/
2003 Prentice Hall, Inc. Todos los derechos reservados.
4
3.2 Los applets muestra del Kit de desarrollo de software Java 2
Ejecución de applets En el símbolo del sistema, cambie a la demostración subdirectorio del subprograma
cd c: \ j2sdk1.4.1 \ demo \ applets
cd appletDirectoryName
Habrá un archivo HTML utilizado para ejecutar applets
Escriba appletviewer example1.html
![Page 5: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/5.jpg)
appletviewer carga el archivo html especificada como argumento
de línea de comandos
Desde el archivo HTML, determina que applet para cargar (más la
sección 3.3)
Applet se ejecutará, Actualizar y Salir comandos en el menú Applet
2003 Prentice Hall, Inc. Todos los derechos reservados.
5
3.2 Los applets muestra del Kit de desarrollo de software Java 2
Comienzas como jugador "X"Fig. Ejecución 3.2 Muestra de TicTacToe applet.
2003 Prentice Hall, Inc. Todos los derechos reservados.
6
![Page 6: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/6.jpg)
3.2 Los applets muestra del Kit de desarrollo de software Java 2
Fig. Ejecución 3.4 Muestra de DrawTest applet.
Arrastre el puntero del ratón en el área blanca para dibujar.
Seleccione el
color de dibujo haciendo clic en el círculo para el color que desee. Estos componentes GUI son
comúnmente conocidos como botones de radio.
Seleccione la forma que desea dibujar haciendo clic en la flecha hacia abajo, a continuación,
en líneas o puntos. Este componente GUI se conoce comúnmente como un cuadro combinado, la
elección o de la lista desplegable.
2003 Prentice Hall, Inc. Todos los derechos reservados.
7
3.2 Los applets muestra del Kit de desarrollo de software Java 2
![Page 7: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/7.jpg)
Demuestra dibujo 2D capacidades integrado en Java2
Haga clic en una ficha para seleccionar un
gráficos bidimensionales de demostración.
Trate de cambiar las opciones para ver su efecto en la manifestación.
2003 Prentice Hall, Inc. Todos los derechos reservados.
8
3.3 simple Java Applet: Drenaje de una cadena Ahora, crear applets de nuestra propia Tómese un tiempo antes de que podamos escribir applets como en los demos
Cubra muchos de mismas técnicas
Programa Próxima Crear un applet para mostrar
"Bienvenido a la Programación Java!"
![Page 8: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/8.jpg)
Mostrar applet y archivo HTML, luego discutirlas línea por línea
2003 Prentice Hall, Inc.
Todos los derechos reservados.
Contorno
9
Applet de Java
![Page 9: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/9.jpg)
Program Salida
1 // Fig. 3.6: WelcomeApplet.java
2 // Un primer applet en Java.
3
4 // paquetes Java
5 java.awt.Graphics importación; // clase Graphics importación
![Page 10: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/10.jpg)
6 javax.swing.JApplet importación; // clase importación JApplet
7
8 public class WelcomeApplet extiende JApplet {
9
10 // Dibujar texto en el fondo del applet 's
11 public void paint (Graphics g)
12 {
13 // llamada versión de la superclase del método paint
14 súper .paint (g);
15
16 // dibujar una cadena en la coordenada x 25 y coordenada y 25
17 g.drawString ("Welcome to Java Programming!", 25, 25);
18
19} // método paint final
![Page 11: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/11.jpg)
20
21} // fin de la clase WelcomeApplet
import nos permite utilizar clases predefinidas (que nos permite utilizar applets y gráficos, en este
caso).
extiende nos permite heredar las capacidades de clase JApplet.
Pintura Método está garantizado para ser llamado en todos los subprogramas. Su primera línea debe
ser definido como anteriormente.
2003 Prentice Hall, Inc. Todos los derechos reservados.
10
3.3 simple Java Applet: Drenaje de una cadena Comentarios
Nombre del código fuente y la descripción de applet de
Importe las clases predefinidas agrupan en paquetes
![Page 12: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/12.jpg)
declaraciones de importación dicen compilador dónde ubicar clases
utilizadas
Al crear applets, importar la clase JApplet (paquete javax.swing)
importar la clase Graphics (paquete java.awt) para dibujar gráficos
Puede dibujar líneas, rectángulos, óvalos cadenas de caracteres
importación especifica la estructura de directorios
5 java.awt.Graphics importación; // clase Graphics importación
6 javax.swing.JApplet importación; // clase importación JApplet
1 // Fig. 3.6: WelcomeApplet.java
2 // Un primer applet en Java.
2003 Prentice Hall, Inc. Todos los derechos reservados.
11
3.3 simple Java Applet: Drenaje de una cadena
![Page 13: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/13.jpg)
Los applets tienen al menos una declaración de la clase (como aplicaciones)
Rara vez crear clases a partir de cero
Utilice piezas de clases existentes
Herencia - crear nuevas clases a partir de las antiguas (Ch. 9)
Comienza declaración de clase para la clase WelcomeApplet
Clase Palabra clave entonces nombre de la clase
extiende seguido del nombre de la clase
Indica la clase de extender (JApplet)
JApplet: superclase (clase base)
WelcomeApplet: subclase (clase derivada)
WelcomeApplet ahora tiene métodos y datos de JApplet
8 public class WelcomeApplet extiende JApplet {
2003 Prentice Hall, Inc. Todos los derechos reservados.
![Page 14: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/14.jpg)
12
3.3 simple Java Applet: Drenaje de una cadena Clase JApplet define para nosotros
Alguien más definido "lo que significa ser un applet"
Los applets requieren más de 200 métodos!
extiende JApplet
Heredar métodos, no tienen que declarar a todos
No es necesario conocer todos los detalles de clase JApplet
8 public class WelcomeApplet extiende JApplet {
2003 Prentice Hall, Inc. Todos los derechos reservados.
13
3.3 simple Java Applet: Drenaje de una cadena Clase WelcomeApplet es un anteproyecto
![Page 15: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/15.jpg)
appletviewer o el navegador crea un objeto de
clase WelcomeApplet
Requiere público palabra clave
File sólo puede tener una clase pública
nombre de la clase pública debe ser el nombre del archivo
8 public class WelcomeApplet extiende JApplet {
2003 Prentice Hall, Inc. Todos los derechos reservados.
14
3.3 simple Java Applet: Drenaje de una cadena Nuestra clase hereda el método de pintura de JApplet
Por defecto, la pintura tiene cuerpo vacío
Override (redefinen) pintura en nuestra clase
Métodos pintan, init, y el inicio
Garantizado para ser llamado de forma automática
![Page 16: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/16.jpg)
Nuestra subprograma consigue versión "libre" de estos heredando
de JApplet
Versiones libres tienen cuerpo vacío (no hacer nada)
Cada subprograma no necesita los tres métodos
Anulación de los que necesita
Contenedor de applets "dibuja a sí mismo" llamando al método de pintura
11 public void paint (Graphics g)
2003 Prentice Hall, Inc. Todos los derechos reservados.
15
3.3 simple Java Applet: Drenaje de una cadena Pintura Método
Líneas 11-19 son la declaración de pintura
Dibuja gráficos en pantalla
![Page 17: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/17.jpg)
void indica retornos de pintura nada cuando tarea acabados
Paréntesis definir la lista de parámetros - donde los métodos
reciben datos para realizar tareas
Normalmente, los datos pasan por el programador, como
en JOptionPane.showMessageDialog
pintura obtiene parámetros de forma automática
Gráficos objeto utilizado por la pintura
Pintura Mimic 's primera línea
11 public void paint (Graphics g)
2003 Prentice Hall, Inc. Todos los derechos reservados.
16
3.3 simple Java Applet: Drenaje de una cadena Pide versión del método paint de la superclase JApplet
![Page 18: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/18.jpg)
En caso de ser la primera declaración en el método de pintura cada 's subprograma Cuerpo de pintura Método drawString (De clase Graphics)
Llamado a través de Gráficos objeto gy punto (.)
Nombre de método, entonces Paréntesis con argumentos
Primer argumento: String para dibujar
Segundo: coordenada x (en píxeles) ubicación
Tercero: la coordenada (en píxeles) ubicación
Java sistema de coordenadas Se mide en píxeles (elementos de imagen)
Arriba a la izquierda es (0, 0)
14 súper .paint (g);
17 g.drawString ("Welcome to Java Programming!", 25, 25);
2003 Prentice Hall, Inc. Todos los derechos reservados.
![Page 19: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/19.jpg)
17
3.3 simple Java Applet: Drenaje de una cadena La ejecución del subprograma Compilar
javac WelcomeApplet.java
Si no hay errores, códigos de bytes almacenados
en WelcomeApplet.class
Cree un archivo HTML
Carga el applet en el appletviewer o un navegador
Finaliza en .htm o .html
Para ejecutar un applet
Cree un archivo HTML que indica que el applet de navegador
(o visor de applets) se debe cargar y ejecutar
2003 Prentice Hall, Inc. Todos los derechos reservados.
![Page 20: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/20.jpg)
18
3.3 simple Java Applet: Drenaje de una cadena Archivo HTML simple (WelcomeApplet.html)
Por lo general, en mismo directorio que el archivo .class
Recuerde, archivo .class creado después de la compilación
Códigos HTML (etiquetas)
Por lo general vienen en pares
Comience con <y terminan con>
Las líneas 1 y 4 - empezar y terminar las etiquetas HTML
Línea 2 - comienza etiqueta <applet>
Especifica el código a utilizar para subprograma
Especifica la anchura y la altura del área de visualización en píxeles
Línea 3 - extremos etiqueta <applet>
![Page 21: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/21.jpg)
1 <html>
2 <applet code = "WelcomeApplet.class" width = altura "300" = "45">
3 </ applet>
4 </ html>
2003 Prentice Hall, Inc. Todos los derechos reservados.
19
3.3 simple Java Applet: Drenaje de una cadena appletviewer sólo entiende etiquetas <applet>
Ignora todo lo demás
Navegador Minimal
Ejecutar el Applet
appletviewer WelcomeApplet.html
Realizar en el directorio que contiene el archivo .class
1 <html>
![Page 22: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/22.jpg)
2 <applet code = "WelcomeApplet.class" width = altura "300" = "45">
3 </ applet>
4 </ html>
2003 Prentice Hall, Inc. Todos los derechos reservados.
20
3.3 simple Java Applet: Drenaje de una cadena Ejecución del applet en un navegador Web
2003 Prentice Hall, Inc. Todos los derechos reservados.
21
3.4 Cuerdas y dibujar líneas Más applets Primer ejemplo
Muestra dos líneas de texto
![Page 23: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/23.jpg)
Utilice drawString para simular una nueva línea con dos
declaraciones drawString
Segundo ejemplo
Método g.drawLine (x1, y1, x2, y2)
Dibuja una línea desde (x1, y1) hasta (x2, y2)
Recuerde que (0, 0) es superior izquierdo
Utilice drawLine para dibujar una línea por debajo y por encima de
una cadena
2003 Prentice Hall, Inc.
Todos los derechos reservados.
Contorno
22
1 // Fig. 3.9: WelcomeApplet2.java
2 // La presentación de varias cadenas en un applet.
![Page 24: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/24.jpg)
3
4 // paquetes Java
5 java.awt.Graphics importación; // clase Graphics importación
6 javax.swing.JApplet importación; // clase importación JApplet
7
8 public class WelcomeApplet2 extiende JApplet {
9
10 // dibujar texto en el fondo del applet 's
11 public void paint (Graphics g)
12 {
13 // llamada versión de la superclase del método paint
14 súper .paint (g);
15
![Page 25: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/25.jpg)
16 // dibujar dos cadenas en diferentes lugares
17 g.drawString ("Bienvenido a", 25, 25);
18 g.drawString ("Java Programming!", 25, 40);
19
20} // método paint final
21
22} // fin de la clase WelcomeApplet2
WelcomeApplet2.java
1. importación
2. Clase WelcomeApplet2 (se extiende JApplet)
3. pintura
![Page 26: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/26.jpg)
3.1 drawString
3.2 drawString
sobre la misma coordenada x, pero 15 píxeles hacia abajo
Las dos declaraciones drawString simulan una nueva línea. De hecho, el concepto de líneas de texto
no existe en la elaboración de cuerdas.
2003 Prentice Hall, Inc.
Todos los derechos reservados.
![Page 27: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/27.jpg)
Contorno
23
Archivo HTML
Program Salida
1 <html>
2 <applet code = "width WelcomeApplet2.class" = "300" height = "60">
3 </ applet>
![Page 28: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/28.jpg)
4 </ html>
2003 Prentice Hall, Inc.
Todos los derechos reservados.
Contorno
24
WelcomeLines.java
2. WelcomeLines clase (se extiende JApplet)
3. pintura
3.1 drawLine
3.2 drawLine
![Page 29: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/29.jpg)
3.3 drawString
Program Salida
1 // Fig. 3,11: WelcomeLines.java
2 // Viendo texto y líneas
3
4 // paquetes Java
5 java.awt.Graphics importación; // clase Graphics importación
![Page 30: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/30.jpg)
6 javax.swing.JApplet importación; // clase importación JApplet
7
8 WelcomeLines clase pública se extiende JApplet {
9
10 // líneas de dibujo y una cadena en el fondo del subprograma
11 public void paint (Graphics g)
12 {
13 // llamada versión de la superclase del método paint
14 súper .paint (g);
15
16 // dibujar línea horizontal a partir de (15, 10) a (210, 10)
17 g.drawLine (15, 10, 210, 10);
18
![Page 31: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/31.jpg)
19 // dibujar la línea horizontal desde (15, 30) a (210, 30)
20 g.drawLine (15, 30, 210, 30);
21
22 // dibujar cadena entre líneas en la posición (25, 25)
23 g.drawString ("Welcome to Java Programming!", 25, 25);
24
25} // método paint final
26
27} // fin de la clase WelcomeLines
Dibujar líneas horizontales con drawLine (puntos finales tienen la misma coordenada y).
2003 Prentice Hall, Inc.
Todos los derechos reservados.
Contorno
25
![Page 32: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/32.jpg)
Archivo HTML
1 <html>
2 <applet code = "WelcomeLines.class" width = altura "300" = "40">
3 </ applet>
4 </ html>
2003 Prentice Hall, Inc. Todos los derechos reservados.
26
3.4 Cuerdas y dibujar líneas
![Page 33: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/33.jpg)
Método drawLine de Gráficos de clase Toma como argumentos Gráficos objeto y el punto final de la línea 's
Coordenadas X e Y del primer punto final
Coordenadas X e Y del segundo punto final
2003 Prentice Hall, Inc. Todos los derechos reservados.
27
3.5 Adición de números en coma flotante Siguiente subprograma Aplicación imita para sumar dos números enteros (Fig 2.9)
Esta vez, el uso de números de punto flotante (números con punto
decimal)
El uso de tipos primitivos
doble - los números de coma flotante de doble precisión
![Page 34: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/34.jpg)
flotador - números de punto flotante de precisión simple
Mostrar programa, y luego discutir
2003 Prentice Hall, Inc.
Todos los derechos reservados.
Contorno
28
AdditionApplet.java
1. importación
2. Clase AdditionApplet (se extiende JApplet)
3. Campos
![Page 35: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/35.jpg)
4. init
4.1 Declarar variables
4.2 showInputDialog
4.3 parseDouble
2 // Adición de dos números de punto flotante
3 java.awt.Graphics de importación; // clase Graphics importación
5
6 AdditionApplet clase pública se extiende JApplet {
7 suma doble; // Suma de los valores introducidos por el usuario
8
9 public void init ()
![Page 36: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/36.jpg)
10 {
11 Cadena FirstNumber, // primera cadena introducida por el usuario
12 secondNumber; // Segunda cadena introducida por el usuario
13 doble número1, // primer número que desea añadir
14 número2; // Segundo número que desea añadir
15
16 // leer en primer número de usuario
17 FirstNumber =
18 JOptionPane.showInputDialog (
19 "Enter primer valor de coma flotante");
20
21 // leer en segundo número del usuario
22 secondNumber =
23 JOptionPane.showInputDialog (
![Page 37: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/37.jpg)
24 "Enter segundo valor de punto flotante");
25
1 // Fig. 3.13: AdditionApplet.java
2 // Adición de dos números de punto flotante.
3
4 // paquetes Java
5 java.awt.Graphics importación; // clase Graphics importación
Javax.swing 6 importación. *; // Paquete importación javax.swing
7
8 AdditionApplet clase pública se extiende JApplet {
9 suma doble; // suma de valores introducidos por el usuario
10
11 // Inicializar subprograma mediante la obtención de los valores de usuario
![Page 38: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/38.jpg)
12 public void init ()
13 {
14 Cadena FirstNumber; // primera cadena introducida por el usuario
15 Cadena secondNumber; // segunda cadena introducida por el usuario
16
17 doble número1; // primer número que desea añadir
18 doble número2; // segundo número que desea añadir
19
20 // obtener primero el número de usuario
21 FirstNumber = JOptionPane.showInputDialog (
22 "Enter primer valor de coma flotante");
23
24 // obtener el segundo número del usuario
![Page 39: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/39.jpg)
25 secondNumber = JOptionPane.showInputDialog (
26 "Enter segundo valor de punto flotante");
27
28 // convertir números de tipo String al tipo doble
29 número1 = Double.parseDouble (FirstNumber);
30 número2 = Double.parseDouble (secondNumber);
31
* Permite a cualquier clase en el paquete que se utilizará.
Suma campo puede utilizarse en cualquier lugar en la clase, incluso en otros métodos.
Escriba doble puede almacenar números de coma flotante.
2003 Prentice Hall, Inc.
Todos los derechos reservados.
Contorno
29
![Page 40: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/40.jpg)
5. contenido del applet Draw
5.1 Dibuje un rectángulo
5.2 Dibuje los resultados
Archivo HTML
![Page 41: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/41.jpg)
31 // agregar los números
32 suma = número1 + número2;
33}
34
35 public void paint (Graphics g)
36 {
37 // Dibuja los resultados con g.drawString
38 g.drawRect (15, 10, 270, 20);
39 g.drawString ("La suma es" + suma, 25, 25);
40}
41}
1 <html>
2 <applet code = "width AdditionApplet.class" = 300 altura = 50>
3 </ applet>
![Page 42: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/42.jpg)
4 </ html>
32 // añadir números
33 suma = número1 + número2;
34
35} // fin del método init
36
37 // Dibujar los resultados en un rectángulo en el fondo del applet 's
38 public void paint (Graphics g)
39 {
40 // llamada versión de la superclase del método paint
41 súper .paint (g);
42
43 // dibujar rectángulo a partir de (15, 10) es de 270
![Page 43: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/43.jpg)
44 // píxeles de ancho por 20 píxeles de alto
45 g.drawRect (15, 10, 270, 20);
46
47 // dibujar resultados como una cadena en (25, 25)
48 g.drawString ("La suma es" + suma, 25, 25);
49
50} // método paint final
51
52} // fin de la clase AdditionApplet
1 <html>
2 <applet code = "AdditionApplet.class" width = altura "300" = "65">
3 </ applet>
4 </ html>
![Page 44: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/44.jpg)
drawRect toma la parte superior izquierda de coordenadas, anchura y altura del rectángulo para
dibujar.
2003 Prentice Hall, Inc.
Todos los derechos reservados.
Contorno
30
Program Salida
2003 Prentice Hall, Inc. Todos los derechos reservados.
31
3.5 Adición de números en coma flotante Líneas 1-2: Comentarios
Línea 5: Gráficos de clase importación s
importación no es necesario si el uso de paquete completo y
nombre de la clase
![Page 45: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/45.jpg)
public void paint (java.awt.Graphics g)
Línea 8: especificar toda paquete javax.swing
* Indica todas las clases en javax.swing están disponibles
Incluye JApplet y JOptionPane
Utilice JOptionPane lugar de javax.swing.JOptionPane
* No no no cargar todas las clases
Compilador sólo carga las clases que utiliza
5 java.awt.Graphics importación; // clase Graphics importación
Javax.swing 6 importación. *; // Paquete importación javax.swing
2003 Prentice Hall, Inc. Todos los derechos reservados.
32
3.5 Adición de números en coma flotante Comience declaración de la clase
Extienda JApplet, ed importación de paquete javax.swing
![Page 46: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/46.jpg)
Declaración del campo
Cada objeto de la clase se copia propia del campo
Métodos declarados en el interior del cuerpo de la clase, pero no
Las variables declaradas en métodos son variables locales
Sólo se puede usar en el cuerpo del método
Los campos que se pueden utilizar en cualquier lugar en la clase
Tener valor por defecto (0,0 en este caso)
8 AdditionApplet clase pública se extiende JApplet {
9 suma doble; // suma de valores introducidos por el usuario
2003 Prentice Hall, Inc. Todos los derechos reservados.
33
3.5 Adición de números en coma flotante Tipo Primitivo doble
Se utiliza para almacenar con coma flotante (decimales) números
![Page 47: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/47.jpg)
Init Método
Normalmente inicializa campos y clase del applet
Garantizado para ser primer método llamado en el applet
Primera línea debe aparecer siempre que el anterior
No devuelve nada (void), no tiene argumentos
Empieza cuerpo del método init
9 suma doble; // suma de valores introducidos por el usuario
12 public void init ()
13 {
2003 Prentice Hall, Inc. Todos los derechos reservados.
34
3.5 Adición de números en coma flotante Declarar variables
Dos tipos de variables
![Page 48: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/48.jpg)
Las variables de referencia (llamados referencias)
Consulte objetos (contener la ubicación en la memoria)
Objetos definidos en una definición de clase
Puede contener múltiples datos y métodos
pintura recibe una referencia llamada g de un objeto Graphics
Referencia utilizado para llamar a métodos en el objeto
Graphics
Los tipos primitivos (llamadas variables)
Contener un dato
14 Cadena FirstNumber; // primera cadena introducida por el usuario
15 Cadena secondNumber; // segunda cadena introducida por el usuario
16
17 doble número1; // primer número que desea añadir
18 doble número2; // segundo número que desea añadir
![Page 49: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/49.jpg)
2003 Prentice Hall, Inc. Todos los derechos reservados.
35
3.5 Adición de números en coma flotante Referencias distintivas y variables
Si el tipo es un nombre de clase, después hacer referencia
La cadena es una clase
FirstNumber, secondNumber
Si escriba un tipo primitivo, entonces la variable
doble es un tipo primitivo
número1, número2
14 Cadena FirstNumber; // primera cadena introducida por el usuario
15 Cadena secondNumber; // segunda cadena introducida por el usuario
16
17 doble número1; // primer número que desea añadir
![Page 50: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/50.jpg)
18 doble número2; // segundo número que desea añadir
2003 Prentice Hall, Inc. Todos los derechos reservados.
36
3.5 Adición de números en coma flotante Método JOptionPane.showInputDialog Pide al usuario para la entrada con una cuerda
Introduzca el valor en el campo de texto, haga clic en Aceptar
Si no es del tipo correcto, se produce un error
En el capítulo 15 aprender a lidiar con este
Devuelve entradas de usuario cadena
Instrucción de asignación de cadena
Líneas 25-26: Igual que el anterior, asigna entrada a secondNumber
21 FirstNumber = JOptionPane.showInputDialog (
![Page 51: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/51.jpg)
22 "Enter primer valor de coma flotante");
2003 Prentice Hall, Inc. Todos los derechos reservados.
37
3.5 Adición de números en coma flotante método estático Double.parseDouble
Convierte argumento String a una doble
Devuelve el valor doble
Recuerde sintaxis método estático
ClassName.methodName (argumentos)
Sentencia de asignación
resumir un campo, puede utilizar en cualquier lugar en la clase
No está definido en init pero todavía usado
33 suma = número1 + número2;
29 número1 = Double.parseDouble (FirstNumber);
![Page 52: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/52.jpg)
30 número2 = Double.parseDouble (secondNumber);
2003 Prentice Hall, Inc. Todos los derechos reservados.
38
3.5 Adición de números en coma flotante Finaliza método init
appletviewer (o navegador) llama heredado método start
empezar por lo general se utiliza con multithreading
Concepto avanzado, en el capítulo 16
Nosotros no declaramos, declaración tan vacío en JApplet
utilizado
Siguiente, el método de pintura de llama
Método drawRect (x1, y1, ancho, alto)
Dibujar rectángulo, esquina superior izquierda (x1, y1), anchura y
altura especificados
![Page 53: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/53.jpg)
Línea 45 dibuja rectángulo de partida al (15, 10) con una anchura
de 270 píxeles y una altura de 20 pixeles
35} // fin del método init
45 g.drawRect (15, 10, 270, 20);
2003 Prentice Hall, Inc. Todos los derechos reservados.
39
3.5 Adición de números en coma flotante Envía mensajes drawString (llamadas a métodos) a objeto Graphics utilizando referencia g
"La suma es" + suma - concatenación de cadenas
suma convierte en una cadena
suma puede ser utilizado, incluso aunque no se define en la pintura
campo, se puede utilizar en cualquier lugar en la clase
Variables no locales
![Page 54: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/54.jpg)
48 g.drawString ("La suma es" + suma, 25, 25);
2003 Prentice Hall, Inc. Todos los derechos reservados.
40
3.6 Java Applet Internet y la World Wide Web Recursos
Muchos recursos del applet de Java disponibles java.sun.com/applets/
Muchos recursos y applets gratuitas
Tiene applets de demostración de J2SDK
Sun sitio developer.java.sun.com/developer
El soporte técnico, foros de discusión, formación, artículos,
enlaces, etc.
Se requiere su registro
www.jars.com
![Page 55: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/55.jpg)
Precios applets, superior 1, 5 y 25 por ciento
Ver mejores applets en la web
2003 Prentice Hall, Inc. Todos los derechos reservados.
41
3.7 (Ejemplo práctico opcional) Acerca de los objetos: Identificar las clases en un Planteamiento del
problema La identificación de clases en un Sistema Sustantivos de sistema para ejecutar la simulación ascensor
2003 Prentice Hall, Inc. Todos los derechos reservados.
42
3.7 (Ejemplo práctico opcional) Acerca de los objetos: Identificar las clases en un Planteamiento del
problema
![Page 56: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/56.jpg)
No todos los nombres se refieren al modelo (no resaltado) Empresa y la construcción no es parte de la simulación
Pantalla, audio y música de ascensor se refieren a la presentación
GUI, el usuario de la aplicación, primer y segundo botón del piso
Cómo modelo de controles de usuario único
Capacidad del ascensor sólo una propiedad
Conservación de la energía no modeló
La simulación es el sistema de
Ascensor y cabina del ascensor son mismas referencias
Sistema de ascensor desprecio por ahora
2003 Prentice Hall, Inc. Todos los derechos reservados.
43
![Page 57: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/57.jpg)
3.7 (Ejemplo práctico opcional) Acerca de los objetos: Identificar las clases en un Planteamiento del
problema Sustantivos resaltados que se ejecutarán en el sistema Botón del ascensor y de botón suelo funciones separadas
Capitalizar nombres de clase
Cada palabra separada en nombre de la clase también capitalizó
ElevatorShaft, Ascensor, persona, piso, ElevatorDoor, FloorDoor,
ElevatorButton, FloorButton, Bell, y Luz
2003 Prentice Hall, Inc. Todos los derechos reservados.
44
![Page 58: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/58.jpg)
3.7 (Ejemplo práctico opcional) Acerca de los objetos: Identificar las clases en un Planteamiento del
problema Usando UML para modelar sistema de ascensor Clase Diagramas de modelos de clases y relaciones
Bloques Modelo estructura / edificio de sistema
Representando Ascensor clase usando UML Top rectángulo es nombre de la clase
Medio contiene atributos de clase '
Bottom contiene «operaciones de claseElevador
2003 Prentice Hall, Inc. Todos los derechos reservados.
45
![Page 59: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/59.jpg)
3.7 (Ejemplo práctico opcional) Acerca de los objetos: Identificar las clases en un Planteamiento del
problema Asociaciones de clase usando UML Diagrama elidido
Los atributos de clase y las operaciones ignorado
Relación de clase entre ElevatorShaft, Ascensor y FloorButton
La línea continua es una asociación o relación entre las clases
Números cerca de líneas expresan valores de multiplicidad
Indique cuántos objetos de clase participar asociaciónSolicitudes
1
1
1
2
2
![Page 60: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/60.jpg)
ElevatorShaft
FloorButton
Elevador
1
Restablece
Signalsarrival
2003 Prentice Hall, Inc. Todos los derechos reservados.
46
3.7 (Ejemplo práctico opcional) Acerca de los objetos: Identificar las clases en un Planteamiento del
problema El diagrama muestra dos objetos de la clase FloorButton
participan en asociación con un objeto deElevatorShaft
FloorButton tiene de dos a uno con relación ElevatorShaft
2003 Prentice Hall, Inc. Todos los derechos reservados.
![Page 61: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/61.jpg)
47
3.7 (Ejemplo práctico opcional) Acerca de los objetos: Identificar las clases en un Planteamiento del
problema Las asociaciones pueden ser nombrados
En el diagrama, "Solicitudes", indica la asociación y la flecha
indica la dirección de la asociación
Un objeto de FloorButton solicita un objeto de la
clase Ascensor
Contexto similar con "Restablece" y "Señales de llegada"
Relación de acumulación
Implica relación todo / parte
Algunos objeto "tiene" algún objeto
Objeto adjunta con el diamante es "dueño"
![Page 62: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/62.jpg)
Objeto en el otro extremo es la "parte"
En el diagrama, hueco del ascensor "tiene un" y dos botones de
piso ascensor
2003 Prentice Hall, Inc. Todos los derechos reservados.
48
3.7 (Ejemplo práctico opcional) Acerca de los objetos: Identificar las clases en un Planteamiento del
problemaFig. Diagrama 3,23 Clase para el modelo de ascensor.1
1
1
1
2
2
1
1
![Page 63: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/63.jpg)
1
1
1
1
1
1
1
2
1
1
1
1
1
Persona
FloorDoor
Luz
Piso
ElevatorShaft
FloorButton
ElevatorDoor
Elevador
![Page 64: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/64.jpg)
ElevatorButton
Campana
Solicitudes
Prensas
Prensas
Rides
Señales para mover
Restablece
Restablece
Camina a través de
Abre
Abre
1
Anillos
Activa / desactiva
Signalsarrival
1
1
1
![Page 65: 3 Traduci Daxcv](https://reader035.fdocument.pub/reader035/viewer/2022070418/5695d27f1a28ab9b029aa7a9/html5/thumbnails/65.jpg)
1
pasajero
2003 Prentice Hall, Inc. Todos los derechos reservados.
49
3.7 (Ejemplo práctico opcional) Acerca de los objetos: Identificar las clases en un Planteamiento del
problema El diagrama de clases completo para el modelo de ascensor Varios de muchos y agregados
Ascensor es la agregación de ElevatorDoor, ElevatorButton y Bell
Varios de muchas asociaciones
Persona botones "prensas"
Persona también "paseos" Ascensor y "camina" a través del piso