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]; }
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){}
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
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++){
//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
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.
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); }