## Descripción de un Applet

Cada applet está implementado mediante una subclase de la clase Applet. La siguiente figura muestra las herencias de la clase Applet. Estas herencias determinan mucho de lo que un applet puede hacer y como lo hace, como verás en las siguientes páginas.

    java.lang.Object
       |
       +----java.awt.Component
               |
               +----java.awt.Container
                       |
                       +----java.awt.Panel
                               |
                               +----java.applet.Applet

### Un Applet Sencillo

> Lo de abajo es el código fuente de un Applet llamado Simple. Este applet muestra una cadena descriptiva donde se encuentra el mayor evento en su vida, cuando el usuario visite por primera vez la página del applet. Las páginas que siguen utilizan el applet Simple y construyen sobre él para ilustrar conceptos que son comunes a muchos Applets.

>     import java.applet.Applet;
>     import java.awt.Graphics;

>     public class Simple extends Applet {
>         StringBuffer buffer;
>         public void init() {
>             buffer = new StringBuffer();
>             addItem("inicializando... ");
>         }

>         public void start() {
>             addItem("arrancando... ");
>         }

>         public void stop() {
>             addItem("parando... ");
>         }

>         public void destroy() {
>             addItem("preparando para descargar...");
>         }

>         void addItem(String newWord) {
>             System.out.println(newWord);
>             buffer.append(newWord);
>             repaint();
>         }

>         public void paint(Graphics g) {
>             //Dibuja un Rectangulo alrededor del area del Applet.
>             g.drawRect(0, 0, size().width - 1, size().height - 1);

>             //Dibuja la cadena actual dentro del Rectangulo.
>             g.drawString(buffer.toString(), 5, 15);
>         }
>     }

### El Ciclo de Vida de un Applet

> Se puede utilizar el applet Simple para aprender sobre los eventos en cada una de las vidas de un applet.

### Métodos para Milestones

> La clase Applet proporciona una zona de trabajo para la ejecución del applet, definiendo métodos que el sistema llama cuando ocurre un milestone -- El mayor evento en el ciclo de vida de un applet --. La mayoría de los applets pasan por encima de estos métodos para responder apropiadamente al milestone.

### Métodos para dibujar y para manejar eventos

> Los Applets heredan los Métodos de dibujo y de manejo de eventos de la clase componente AWT. (AWT significa Abstract Windowing Toolkit ; los applets y las aplicaciones utilizan sus clases para producir Interfaces de usuario.)Dibujar se refiere a algo relacionado con la representación de un applet en la pantalla --dibujar imágenes, presentar componentes de un interface como botones, o utilizar gráficos rudimentarios. Manejo de Eventos se refiere a la detección y procesamiento de las etradas del usuario como pulsaciones del Ratón o del teclado, así como otros eventos abstractos como salvar ficheros o cerrar ventanas.

### Métodos para añadir Componentes UI

> Los Applets descienden de la clase contendora AWT. Esto signfica que están diseñados para contener Componentes --Objetos de un interface de usuario como botones, etiquetas, listas deplegables y barras de desplazamiento. Al igual que otros contenedores los applets tienen manejadores para controlar el posicionamiento de los Componentes.

### Tareas en un Applet

> Como has aprendido en Tareas de Control, una tarea --conocida tambien como un contexto de ejecución o un proceso ligero --es un sencillo flujo de control secuencial dentro de un proceso. Incluso el applet más sencillo se ejecuta en multiples tareas, aunque no siempre es obvio. Muchos applets crean y utilizan sus propias tareas, por eso las realizan correctamente sin afectar el rendimiento de la aplicación donde se encuentran o de otros applets.

### Qué puede y qué no puede hacer un Applet

> Por razones de seguridad, un applet que se ha cargado a travé de la Red tiene muchas restricciones. Una de ellas es que normalmente no puede leer o escribir ficheros en el ordenador donde se está ejecutando. Otra es que un applet no puede hacer conexiones a través de la red excepto hacia el Host del que ha venido. A pesar de estas restricciones los applets pueden hacer algunas cosas que no se esperan. Por ejemplo, un applet puede llamar a los métodos públicos de otro applet que esté en la misma págna.

### Añadir un Applet a una página HTML

> Una vez que has escrito un applet, necesitas añadirlo a una página HTML para que pueda ejecutarse.

Ozito