Está en la página 1de 32

Act 14: Trabajo Colaborativo Numero 3.

Curso Programacin Orientada a Objetos.


Cdigo 301403.






Por
Frank Johan Ramrez Garca.
CC. 1.117.532.340.


Presentado a
Tutor Jorge Eliecer Martnez.






Universidad Nacional Abierta y a Distancia UNAD
CEAD-Florencia.
Escuela de Ciencias Bsicas, Tecnologas e Ingenieras - ECBTI
15/05/2014











ACTIVIDADES COMPLEMENTARIAS CAPTULO 7: CLASES BSICAS EN LA POO.

Parte Uno:

1. Investiga cuales son las herramientas utilizas en java y diga cul es su
funcin.

Con cada una de las versiones que Sun lanza del JDK, se acompaa de una serie de bibliotecas con
clases estndar que valen como referencia para todos los programadores en Java.
1


A este conjunto de paquetes (o bibliotecas) se le conoce como la API de Java
(Application Programming Interface).

Paquetes de utilidades

java.lang: Fundamental para el lenguaje. Incluye clases como String o
StringBuffer.
java.io: Para la entrada y salida a travs de flujos de datos, y ficheros del
sistema.
java.util: Contiene colecciones de datos y clases, el modelo de eventos,
facilidades horarias, generacin aleatoria de nmeros, y otras clases de
utilidad.
java.math: Clases para realizar aritmtica con la precisin que se desee.
java.text: Clases e interfaces para manejo de texto, fechas, nmeros y
mensajes de una manera independiente a los lenguajes naturales.
java.security: Clases e interfaces para seguridad en Java: Encriptacin
RSA...



1
http://programando-freedfd-java.blogspot.com/2009/10/como-programar-en-java-funciones-de.html
Paquetes para el desarrollo grfico

java.Applet: Para crear applets y clases que las applets utilizan para
comunicarse con su contexto.
java.awt: Para crear interfaces con el usuario, y para dibujar imgenes y
grficos.
avax.swing: Conjunto de componentes grficos que funcionan igual en todas
las plataformas que Java soporta.
javax.accesibility: Da soporte a clases de accesibilidad para personas
discapacitadas.
java.beans: Para el desarrollo de JavaBeans.


Paquetes para el desarrollo en red

java.sql: Paquete que contiene el JDBC, para conexin de programas Java
con Bases de datos.
java.rmi: Paquete RMI, para localizar objetos remotos, comunicarse con ellos
e incluso enviar objetos como parmetros de un objeto a otro.
org.omg.CORBA: Facilita la posibilidad de utilizar OMG CORBA, para la
conexin entre objetos distribuidos, aunque est codificados en distintos
lenguajes.
Java Studio Enterprise: Es el IDE comercial basado en Netbeans 4.1, y es
capaz de generar diagramas de especificacin formal en UML a partir del
cdigo fuente, y viceversa (algo parecido a las herramientas Rational Rose de
especificacin formal).
Java Studio Creator: Es, por as decirlo, una herramienta Visual Basic de
Sun, y permite el desarrollo de aplicaciones J2EE usando Java Server Faces.
Java Studio Creator es el entorno de desarrollo econmico de Sun.
Java Studio Creator 2: tiene las siguientes funcionalidades:
Componentes AJAX.
Soporte de portlets.
Acceso sencillo a Webservices.
Acceso a EJB mediante drag-and-drop.
Data Provider Components, para acceso a datos.


2. Construye un arreglo donde incluya un mtodo.

Programa que muestra el nmero mayor, menor y promedio de una cantidad de nmeros dada y
ejecutada mediante un arreglo.

import java.io.*;

public class Arreglo {

public static void main(String[] args) throws IOException
{
System.out.print("Cantidad de numeros: ");
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
int num = Integer.parseInt(in.readLine());
int [] arr= new int [num];
for (int i = 0; i < num; i++)
arr[i]= Integer.parseInt(in.readLine());

int mayor = 0;
int menor = arr[0];
int suma = 0;

for (int i=0; i< arr.length; i++)
{
if (arr[i] > mayor) mayor=arr[i];
if (arr[i] < menor) menor=arr[i];
suma += arr[i];
}

System.out.println ("El mayor es: " + mayor);
System.out.println ("El menor es: " + menor);
System.out.println ("El promedio es: " + suma/arr.length);
}
}


3. Realice un mapa conceptual con el siguiente tema E/s.




4. Realice una abstraccin jerrquica de su carro donde enuncie el sistema
principal y los subsistemas.

Una forma poderosa de gestionar la abstraccin es utilizando clasificaciones jerrquicas; esto nos
permite dividir en niveles la semntica de los sistemas complejos, obteniendo sistemas ms
manejables, as un carro tendra:

Sistema principal: Automvil
Subsistemas: Sistema Motor
Sistema del Tren Propulsor
Rines, Llantas y Frenos
Sistema de Suspensin
Sistema de Direccin
Sistema Elctrico
Sistema Carrocera y Chasis
2

5. Escriba los enunciados que ejecuten cada uno de los siguientes:
Introduzca el valor en el elemento 4 de un arreglo de punto flotante de un
solo subndice b.

Import java.io.*;

int A[]= new float[10];
A[4]= 3.1416;

public class vectorpos4
{
public static void main(String[] args)
{
DataInputStream entrada=new DataInputStream(System.in);
int n=0,i;
float A[];
A=new float[n];
i=4;

2
http://www.sociedadytecnologia.org/blog/view/26378/los-7-principales-sistemas-del-automovil
try
{
System.out.print ("Digite el valor que se almacenar en la posicion 4: ");
A[i]=Integer.parseInt(entrada.readLine());
}catch(IOException e){}

System.out.println("Vector Leido");
System.out.print(A[i]+" ");
System.out.println();
System.exit(0);
}
}


6. Determine e imprima los valores ms pequeos y ms contenidos en un
arreglo de punto flotante w de 99 elementos.

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Arreglo2 {
public static void main(String[] args) {
int [] numeros = new int[99];//declaramos vector int de 7 posiciones
int [] repeticiones = new int[99];//vector para contar repeticiones de cada uno de los 7 numeros

//inicializamos vectores a cero
for(int j =0; j<99; j++){
repeticiones[j]=0;
numeros[j]=0;
}

for(int i = 0; i<99; i++){
try {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.print("Ingrese el numero"+(i+1)+": ");
String cadena = br.readLine();//capturamos un string
int numero = Integer.parseInt(cadena);//pasamos cadena a int
numeros[i] = numero;//asignamos numero a posicion de vector
} catch (IOException e) {
System.out.println(e.getMessage());
}
}
//ordenamos
int aux1;
for(int i = 0; i<99-1; i++){
for(int k=0; k<99; k++){

if(numeros[i]> numeros[k]){
aux1 = numeros[i];
numeros[i] = numeros[k];
numeros[k] = aux1;
}
}
}

System.out.println("Los 10 nmeros menores son: ");
for(int
i=1; i<10; i++){
System.out.print(" "+numeros[i]+",");
}

int indice=contarRepeticiones(numeros, repeticiones);

System.out.println("El numero con mayor repeticion es: "+numeros[indice]);
}

public static int contarRepeticiones(int [] numeros,int [] repeticiones){

//contamos repeticiones
for(int i = 0; i<99; i++){
for(int k=0; k<99; k++){
if(numeros[i]== numeros[k])
repeticiones[i]++;
}
}

//buscamos el mayor grado de repeticion,
// en el vector numeros del de mayor repeticion
int mayor=0;
for(int i=0; i<repeticiones.length;i++){
if(repeticiones[i]> mayor)
mayor = i;
}

return mayor;//devolvemos el indice con mayor repeticion
}

}
ACTIVIDADES COMPLEMENTARIAS CAPITULO 9. EXTENSIN DE CLASES

Parte Uno:

1. Realiza un mapa conceptual sobre las clases que se manejan en java


Basado en: http://www.webtaller.com/construccion/lenguajes/java/lecciones/clases-java.php


2. Investigar ms sobre anidado de clases y reflexiona sobre cul es la
funcin importante en java.

Una clase anidada es un miembro de su clase contenedora y, como tal, tiene acceso a otros miembros
de la clase contenedora, incluso si se declaran privados. Como un miembro de OuterClass, una clase
anidada puede declararse private, public, protected, o privada al paquete. (Recuerde que las clases
exteriores solamente pueden declararse public o privadas al paquete.)
3


class OuterClass { //clase externa
...
class NestedClass { //clase anidada
...
}
}

Terminologa: Las clases anidadas se dividen en dos categoras: estticas y no
estticas. Las clases anidadas que se declaran static se llaman simplemente
clases estticas anidadas.
Hay varias razones importantes para usar clases anidadas, entre estas:

Es una forma de agrupar clases lgicamente que solo se usan en un lugar.
Si una clase es til solamente a otra clase, entonces es lgico anidarla en
esa clase y mantenerlas juntas. La anidacin tal como "clases de ayuda"
hace sus paquetes ms uniformes

Incrementa la encapsulacin.Considerndose dos clases de nivel superior,
A y B, donde B necesita acceso a los miembros de A que de otra forma
seran declarados private. Al esconder la clase B dentro de la clase A, los
miembros de A pueden declararse privados y B puede accederlos. Adems,
B en s mismo puede esconderse del mundo exterior



3
http://devel.no-ip.org/programming/languages/java/tutorial/java/javaOO/nested.html
Las clases anidadas pueden conducir a cdigo ms legible y mantenible.
Anidar clases pequeas dentro de clases de nivel superior ubica el cdigo
ms cerca de donde se usa.

3. Qu es una subclase y cul es su funcin?

Una subclase es la descripcin de una clase basada en la estructura de otra clase,
se puede mirar como una extensin de la superclase, donde se pueden tomar las
caractersticas de la superclase, y adicionarle nuevas caractersticas. Este
concepto suele confundirse con el concepto de herencia, pero no siempre puede
decirse que una subclase es una herencia, ya que sta puede redefinir (override)
todo lo de su superclase, luego no heredara nada. En la herencia se reciben las
definiciones de la superclase y se usan conjuntamente con nuevas definiciones;
heredar es compartir atributos entre una clase y sus subclases; sino comparte, no
hay herencia.
Por ejemplo, supongamos que queremos crear una subclase llamada Subclase de
otra clase llamada Superclase. Se escribira esto.
Class SubClass extends SuperClass { . . .}
Esto declara que SubClase es una subclase de SuperClase. Y tambin declara
implcitamente que SuperClase es la superclase de Subclase. Una subclase
tambin hereda variables y miembros de las superclases de su superclase, y as a
lo largo del rbol de la herencia. Para hacer esta explicacin un poco ms sencilla,
cuando este tutorial se refiere a la superclase de una clase significa el ancestro
ms directo de la clase as como a todas sus clases ascendentes.
Una clase Java slo puede tener una superclase directa. Java no soporta la
herencia mltiple. Crear una subclase puede ser tan sencillo como incluir la
clusula extends en la declaracin de la clase. Sin embargo, normalmente se
deber realizar alguna cosa ms cuando se crea una subclase, como sobrescribir
mtodos, etc...
Una subclase hereda todos los variables miembros de su superclase que puedan
ser accesibles desde la subclase (a menos que la variable miembro, est oculta en
la subclase).
Esto es, las subclases:
Heredan aquellas variables miembros declaradas como public o protected
Heredan aquellas variables miembros declaradas sin especificador de acceso
(normalmente conocidas como "Amigas") siempre que la subclase est en el
mismo paquete que la clase
No hereda las variables miembros de la superclase si la subclase declara una
variable miembro que utiliza el mismo nombre. La variable miembro de la
subclase se dice que oculta a la variable miembro de la superclase.
No hereda las variables miembro prvate

Ocultar Variables Miembro: Como se mencion anteriormente, las variables
miembros definidas en la subclase ocultan las variables miembro que tienen el
mismo nombre en la superclase. Como esta caracterstica del lenguaje Java es
poderosa y conveniente, puede ser una fuente de errores: ocultar una variable
miembro puede hacerse deliberadamente o por accidente. Entonces, cuando
nombres tus variables miembro se cuidadoso y oculta slo las variables miembro
que realmente deseas ocultar.
Una caracterstica interesante de las variables miembro en Java es que una clase
puede acceder a una variable miembro oculta a travs de su superclase.
Considere esta pareja de superclase y subclase.
Class Super {
Number unNumero;
}
Class Sub extends Super {
Float unNumero;
}
La variable unNumero de Sub oculta a la variable unNumero de Sper. Pero se
puede acceder a la variable de la superclase utilizando.

super.unNumero
Sper es una palabra clave del lenguaje Java que permite a un mtodo referirse a
las variables ocultas y mtodos sobrescritos de una superclase.

Qu mtodos hereda una Subclase?
La regla que especifica los mtodos heredados por una subclase es similar a la de
las variables miembro. Una subclase hereda todos los mtodos de sus superclase
que son accesibles para la subclase (a menos que el mtodo sea sobrescrito por
la subclase).

Esto es, una Subclase.

Hereda aquellos mtodos declarados como public o protected
Hereda aquellos mtodos sin especificador de acceso, siempre que la subclase
est en el mismo paquete que la clase.
No hereda un mtodo de la superclase si la subclase declara un mtodo que
utiliza el mismo nombre. Se dice que el mtodo de la subclase sobrescribe al
mtodo de la superclase.
No hereda los mtodos prvate.

En Java, como en otros lenguajes de programacin orientados a objetos, las
clases pueden derivar desde otras clases. La clase derivada (la clase que
proviene de otra clase) se llama subclase. La clase de la que est derivada se
denomina superclase.

De hecho, en Java, todas las clases deben derivar de alguna clase. Lo que nos
lleva a la cuestin Dnde empieza todo esto? La clase ms alta, la clase de la
que todas las dems descienden, es la clase Object, definida en java.lang. Object
es la raz de la herencia de todas las clases.

Las subclases heredan el estado y el comportamiento en forma de las variables y
los mtodos de su superclase. La subclase puede utilizar los tems heredados de
su superclase tal y como son, o puede modificarlos o sobrescribirlos. Por eso,
segn se va bajando por el rbol de la herencia, las clases se convierten en ms y
ms especializadas:

[pic]Definicin: Una subclase es una clase que desciende de otra clase. Una
subclase hereda el estado y el comportamiento de todos sus ancestros. El trmino
superclase se refiere a la clase que es el ancestro ms directo, as como a todas
las clases ascendentes.


4. cul es la funcin principal de los mtodos en la programacin java?

Los mtodos son las operaciones que pueden realizarse sobre el objeto, que
normalmente estarn incorporados en formas de programas (en cdigo) que el
objeto es capaz de ejecutar y que tambin pone a disposicin de sus
descendientes a travs de la herencia y su funcin principal en Java es
representar una operacin o funcin que un objeto realiza, el conjunto de los
mtodos de un objeto son los que determinan el comportamiento del objeto.
La funcin principal de los mtodos en la programacin java son las subrutinas
que definen la interfaz de una clase, su comportamiento. En los mtodos se
deben definir el tipo de valor que devuelven y los parmetros de entrada. Los
mtodos indican una instancia individual de la clase.

Los mtodos se utilizan de la misma forma que los atributos, excepto porque los
mtodos poseen siempre parntesis, dentro de los cuales pueden ir valores
necesarios para la ejecucin del mtodo (parmetros):

objeto.mtodo (argumentosDelMtodo)

Los mtodos siempre tienen parntesis (es la diferencia con las propiedades) y dentro
de los parntesis se colocan los argumentos del mtodo. Que son los datos que
necesita el mtodo para funcionar.


5. Cul es la importancia de los cdigos genricos en java?

La importancia de los cdigos genricos en Java es que hacen el cdigo ms legible y
seguro y permite que el uso de una herramienta de diseo tenga soporte directo en el
lenguaje y as los problemas de diseo que tenan que ser abordados de forma
indirecta dando lugar a soluciones poco satisfactorias, puedan ser resueltos mediante
soluciones de diseo simples.

Los creadores de compiladores crearon libreras de clases de objetos (como MFC1
por ejemplo) que facilitaban el uso de cdigo ya creado para las nuevas aplicaciones.

El cdigo Java no se compila, sino que se precompila, de tal forma que se crea un
cdigo intermedio que no es ejecutable. Para ejecutarle hace falta pasarle por un
intrprete que va ejecutando cada lnea. Ese intrprete suele ser la mquina virtual de
Java.


6. Cul es la funcin principal de los protocolos para el trabajo en red?

Los protocolos, son la seal mediante la cual se reconoce que puede tener lugar la
comunicacin o la transferencia de informacin. Los protocolos de comunicacin se
pueden controlar tanto con hardware como con software. Un protocolo de
comunicacin de hardware, como el existente entre un ordenador o computadora con
una impresora o con un mdem, es un intercambio de seales, a travs de cables
especficos, en el que cada dispositivo seala su disposicin para enviar o recibir
datos.

La funcin principal de los protocolos para el trabajo en red es la interconexin para el
transporte y trasmisin de datos a travs de la misma.

7. Cules son las ventajas para utilizar redes a nivel de comunicaciones

Una red informtica puede tener diversos propsitos:

Intercambio de recursos (archivos, aplicaciones o hardware, una conexin a
Internet)
Comunicacin entre personas (correo electrnico, debates en vivo, etc.)
Comunicacin entre procesos (por ejemplo, entre equipos industriales)
Garanta de acceso nico y universal a la informacin (bases de datos en
red)
Videojuegos de varios jugadores

Las redes tambin se usan para estandarizar aplicaciones. El trmino groupware se
usa generalmente para referirse a las herramientas que permiten que varias personas
trabajen en una red. Por ejemplo, las agendas grupales y el correo electrnico se
pueden usar para comunicar de manera ms rpida y eficaz.

A continuacin se presenta una breve descripcin de las ventajas de dichos sistemas:
Costos ms bajos gracias al uso compartido de datos y de perifricos
Estandarizacin de aplicaciones
Acceso a los datos a tiempo
Comunicacin y organizacin ms eficaces

Actualmente, gracias a Internet, presenciamos una unificacin de las redes. Por lo
tanto, las ventajas de instalar una red son mltiples, ya sea para un comercio o para
uso particular.

Algunas ventajas son:
Posibilidad de compartir grandes cantidades de informacin a travs de
distintos programas, bases de datos, etc., de manera que sea ms fcil su
uso y actualizacin.
Integridad, confidencialidad y seguridad de datos.
Facilita la comunicacin entre dos usuarios en lugares distantes.
La transmisin se realiza en tiempo real, siendo adecuado para
comunicacin de voz y video.
Acaparamiento de recursos. Los nodos que intervienen en la comunicacin
disponen en exclusiva del circuito establecido mientras dura la sesin.
Se multiplexan mensajes de varios procesos hacia un mismo destino, y
viceversa, sin que los solicitantes deban esperar a que se libere el circuito
El canal se libera mucho antes que en la conmutacin de circuitos, lo que
reduce el tiempo de espera necesario para que otro remitente enve
mensajes.
Si hay error de comunicacin se retransmite una menor cantidad de datos.
En caso de error en un paquete solo se reenva ese paquete, sin afectar los
dems que llegaron sin error.
Comunicacin interactiva. Al limitar el tamao mximo del paquete, se
asegura que ningn usuario pueda monopolizar una lnea de transmisin
durante mucho tiempo (microsegundos), por lo que las redes de
conmutacin de paquetes pueden manejar trfico interactivo.
Aumenta la flexibilidad y rentabilidad de la red.


8. Haga una lista con los protocolos ms importantes a nivel de
comunicaciones.

FTP: (File Transfer Protocol) para transferencia de archivos
HTTP: (HyperText Transfer Protocol) para acceder a las pginas web
NFS: (Sistema de archivos de red) sistema distribuido para archivos
POP: (Post Office Protocol) para correo electrnico
IMAP4: protocolo es tratado en (RFC 1730) y es revisado en (RFC 2060).
TCP/IP: lo componen los dos protocolos ms importantes que son;
Protocolo de Control de Transmisin (TCP) y Protocolo de Internet(IP)
ARP: (Address Resolution Protocol) para la resolucin de direcciones
SSL: (Secure Socket Layer) para la comunicacin segura entre dos
ordenadores
ICMP: (Protocolo de Mensajes de Control de Internet) para notificar eventos
en los que los paquetes enviados no alcanzaron su destino
SMTP: (Simple Mail Transfer Protocol) para correo electrnico.


9. Cul es la estructura de una applet?

La definicin ms extendida de applet, muy bien resumida por Patrick Naughton,
indica que un applet es "una pequea aplicacin accesible en un servidor Internet, que
se transporta por la red, se instala automticamente y se ejecuta in situ como parte de
un documento web". Claro que as la definicin establece el entorno (Internet, Web,
etc.). En realidad, un applet es una aplicacin pretendidamente corta (nada impide
que ocupe ms de un gigabyte, a no ser el pensamiento de que se va a transportar
por la red y una mente sensata) basada en un formato grfico sin representacin
independiente: es decir, se trata de un elemento a embeber en otras aplicaciones; es
un componente en su sentido estricto.
4


La estructura general de un Applet es tan sencilla como las lneas que van a
continuacin.

Bloque De Importaciones
Nombre De La Clase Derivada De La Clase Applet
Declaracin De Variables
Mtodos
Cierre De La Clase

Bloque De Importaciones: Es aqu donde se deben incluir las libreras donde estn
definidas las clases nativas que se utilizarn en el programa. Su sintaxis es la
siguiente:

import Nombre clase o paquete;
Ejemplo: import java.applet.Applet;

Nombre De La Clase Derivada De La Clase Applet: Nombre de la nueva clase, esta
se debe derivar de la clase Applet y su nombre debe ser el mismo que el nombre del
archivo que contendr el cdigo.

public class NombreClase extends Applet{

4

http://aprendeenlinea.udea.edu.co/boa/contenidos.php/aac563438e9a0d290973f293b82fff6e/317/1/
contenido/Estructura.html

Declaracin De Variables: Es aqu donde se deben declarar las variables de mbito
global:

int variable;

Declaracin De Mtodos: Es aqu donde se deben implementar los mtodos del
applet:

public void Mtodo (parmetros)
{
//Instrucciones
};

Cierre De La Clase:
}

Veamos ahora un ejemplo de un applet sencillo que solo imprime un mensaje en
pantalla.

import java.applet.Applet;
import java.awt.Graphics;
public class Applet1 extends Applet
{
public void paint (Graphics gDC)
{
gDC.drawString("Ejemplo1",20,20);
}
}

10. Cmo se controlan las applets?

Existen Mtodos que controlan la ejecucin de un applet, como son:
5


Mtodo init():
Se llama en cuanto el browser o visualizador carga el applet. Se ocupa de
todas las tareas de inicializacin. Ocupa el lugar del constructor (al que el
browser no llama).
En Netscape Navigator se puede reinicializar un applet con Shift+Reload.

Mtodo start():
Se llama en cuanto el applet se hace visible despus de haber sido
inicializada.
Se llama tambin cada vez que el applet se hace visible despus de haber
estado oculta (por ejemplo, por haber dejado de estar activa esa pgina del
browser).
En este mtodo se deben crear threads para aquellas tareas que por el
tiempo que requieren, dejaran sin recursos al applet o incluso al browser.


5
http://www1.ceit.es/Asignaturas/Informat2/Clases/Clases9899/Clase14/JavaApplets/tsld004.htm
Mtodo stop():
Se llama al ocultar el applet (por ejemplo. por haber dejado de estar activa
esa pgina).
En este mtodo se deben parar las threads que estn corriendo en el
applet, por ejemplo para mostrar animaciones.

Mtodo destroy():
Se llama cuando el applet va a ser descargada para liberar los recursos que
tenga reservados (excepto la memoria). De ordinario no hay que redefinir
este mtodo.

Dependiendo del applet de que se trate, es posible que el programador tenga que
redefinir uno o varios de estos mtodos.


11. Dnde se inicia la ejecucin de una applet? Explique su respuesta con
un ejemplo.

Un applet es un elemento ms de una pgina web, como una imagen o una porcin
de texto. Cuando el navegador carga la pgina web, el applet insertado en dicha
pgina se carga y se ejecuta.
6


Para crear un applet tenemos que definir una clase denominada Applet1 derivada de
Applet. La primera sentencia import nos proporciona informacin acerca de las clases
del paquete applet. Dicho paquete contiene las clases necesarias para crear applets
que se ejecutan en la ventana del navegador, entre las cuales est la clase base
Applet.


6
http://www.sc.ehu.es/sbweb/fisica/cursoJava/applets/intro/primero.htm
import java.applet.*;
public class Applet1 extends Applet {
}
El siguiente paso es dar funcionalidad a la clase, definir nuestras propias funciones
miembro o redefinir funciones de la clase base Applet.

Definimos la funcin init para establecer el color de fondo del applet mediante
setBackground. La funcin init se llama cuando se carga el applet.

public class Applet1 extends Applet {
public void init(){
setBackgroung(Color.white);
}
//...
}

A continuacin, vamos a mostrar un mensaje, para ello definimos el mtodo paint. El
mtodo paint nos suministra el contexto grfico g, un objeto de la clase Graphics con
el cual podemos dibujar en el rea de trabajo del componente llamando desde dicho
objeto g a las funciones definidas en la clase Graphics.

Para mostrar un mensaje, llamamos desde el objeto g a la funcin miembro
drawString, el primer argumento es el string que deseamos mostrar, y los dos
nmeros indican las coordendas de la lnea base del primer carcter.

import java.applet.*;

public class Applet1 extends Applet {
public void init(){
setBackgroung(Color.white);
}
public void paint(Graphics g){
g.drawString("Primer applet", 10, 10);
}
}

Un applet, no es como una aplicacin que tiene un mtodo main. El applet est
insertado en una pgina web que se muestra en la ventana del navegador. El
navegador toma el control del applet llamando a algunos de sus mtodos, uno de
estos es el mtodo paint que se llama cada vez que se necesita mostrar el applet en
la ventana del navegador.

Cuando el applet se carga, el navegador llama a su mtodo init. En este mtodo el
programador realiza tareas de inicializacin, por ejemplo, establecer las propiedades
de los controles, disponerlos en el applet, cargar imgenes, etc.

El mtodo init se llama una sla vez. Despus, el navegador llama al mtodo paint.

A continuacin, se llama al mtodo start. Este mtodo se llama cada vez que se
accede a la pgina que contiene el applet. Esto quiere decir, que cuando dejamos la
pgina web que contiene el applet y regresamos de nuevo pulsando en el botn
"hacia atrs" el mtodo start vuelve a llamarse de nuevo, pero no se llama el mtodo
init.

Cuando dejamos la pgina web que contiene el applet, por ejemplo, pulsando en un
enlace, se llama al mtodo stop.

Finalmente, cuando salimos del navegador se llama al mtodo destroy.


12. Disee un applet donde actualice los colores del primer plano y del
fondo y que escriba un texto de 5 renglones.


Import java.applet.*;
Import java.awt.*;
Import java.awt.event.*;
public class PintarPlano extends Applet implements ActionListener

{
Button enableDisableButton = new Button("Enable/Disable");
LabelpintarDemoLabel = new Label("Poner Color");
Label pintarDemoLabel2 = new Label("Cambiar Color");
Label pintarDemoLabel3 = new Label("Color Azul");
Label pintarDemoLabel4 = new Label("Color amarillo");
Label pintarDemoLabel5 = new Label("Color verde");
public void init()
{
add(enableDisableButton);
add(pintarDemoLabel);
add(pintarDemoLabel2);
add(pintarDemoLabel3);
add(pintarDemoLabel4);
add(pintarDemoLabel5);
enableDisableButton.addActionListener(this);
}

public void paint(Graphics g)
{
pintarDemoLabel.setEnabled(true);
pintarDemoLabel2.setEnabled(false);
pintarDemoLabel3.setEnabled(true);
pintarDemoLabel4.setEnabled(false);
pintarDemoLabel5.setEnabled(true);
}

public void actionPerformed(ActionEvent e)

{
if (pintarDemoLabel.isEnabled ()){
pintarDemoLabel.setEnabled (false);
pintarDemoLabel2.setEnabled (true);
pintarDemoLabel3.setEnabled (false);
pintarDemoLabel4.setEnabled (true);
pintarDemoLabel5.setEnabled (false);

setBackground(Color.blue);
}
else
repaint();
}

}