La Programación Orientada a Objetos con Java
Abril 2002

La Metodología Orientada a Objetos

El Lenguaje de Programación Java

 

La Metodología Orientada a Objetos

La metodología orientada a objetos se basa en la visión de un espacio formado por grupos de elementos que tienen características comunes y el conjunto de operaciones que actúan sobre ellos encapsulados como uno solo.

Clases

Se le llama clase al grupo formado por elementos que comparten un conjunto de atributos y a las operaciones que actúan sobre estos. Al programar la clase, los atributos reciben el nombre de variables de estado y las operaciones el de métodos. Un ejemplo de clase es el conjunto zapatos que posee los atributos tamaño, material, estilo.

Objetos

Es una instancia de la clase, es decir un elemento tomado de una clase. Por ejemplo si instanciamos a la clase zapato y obtenemos a par #1 con los valores siguientes:

Objeto: par#1

Atributos: tamaño=5, material=lona, estilo=tennis

Metodos

Los métodos son el conjunto de operaciones que actúan sobre los atributos de una clase. Por ejemplo si hablamos de los zapatos, el conjunto de operaciones o acciones que podemos realizar con ellos sería calzar, descalzar, guardar.

El Lenguage de Programación Java

Java es un lenguaje de programación orientado a objetos que corre en diferentes sistemas operativos (multiplataforma), ampliamente usado en Internet para aumentar la funcionalidad de las páginas Web.

La portabilidad del lenguaje Java se debe a que al compilarse en vez de generar código ejecutable para una plataforma específica, lo que hace es generar un código independiente de la máquina que lo ejecuta, llamado bytecode (código de bytes). Por lo tanto existen programas diseñados en cada una de las plataformas para ejecutar el código de bytes de Java. Los archivos de código fuente en Java llevan la extensión .java. Al compilar un programa en java, sea para aplicación o applet se genera un archivo con el mismo nombre del código fuente pero con extensión .class

Con estas prácticas queremos apoyar y promover el desarrollo de proyectos que involucren investigación para generar productos que ayuden al mejoramiento de la calidad de vida del planeta, tanto de plantas, animales y humanos. Para esto consideramos un enfoque de Globalización. Usando Java se puede construir un producto, posiblemente apoyándose en las prácticas que aquí ofrecemos.

Estas prácticas tienen el propósito de ilustrar las funcionalidades del lenguaje Java y aportar ideas para concretar un proyecto. Cada una práctica es un programa en lenguaje Java que cada quien puede modificar de acuerdo con su criterio personal.

El desarrollo de un proyecto involucra típicamente las etapas de Propuesta o detección de un problema, Análisis, Diseño y su Implantacion. En la última pueden usar HTML y Java.

La Boutique de Java (http://javaboutique.internet.com) contiene código en Java que puede utilizar y reutilizar para mejorar y eficientar el desarrollo de su proyecto.

Recomendamos el Libro electrónico Thinking in Java (http://www.mindview.net/Books/TIJ) de Bruce Eckel el cual puede utilizar como referencia del lenguaje Java y además aprovechar los ejemplos que contiene.

Es muy importante que tenga una computadora con espacio en disco duro (aproximadamente 30Mb disponibles) para instalar y guardar sus prácticas. Almacene sus prácticas en un directorio propio para evitar confusiones o pérdida de información.

 

A continuación INSTALE Y CONFIGURE su equipo en donde ejecutará sus prácticas.


Instalación


Para programar en Java lo primero es obtener el compilador de Java e instalarlo en su computadora. Es importante considerar que las versiones del compilador de Java varias pues esta en constante mejora por parte de Sun o de otros fabricantes, por lo tanto las instrucciones que se dan aquí pueden tener variaciones:

El compilador de Java JDK (Java Developers Kit) se puede obtener en el sitio www.javasoft.com.

Entrar en la liga Products & APIs que se encuentra al inicio del lado izquierdo.

En la página a la que nos envia debemos bajar un poco hasta donde dice COMPLETE PRODUCT LIST y ahi darle click donde dice JavaTM 2 SDK Standard Edition v 1.3.

Ahora se debe seleccionar la plataforma en donde se preparan los programas de Java, por ejemplo: Microsoft Windows.

Al cambiar la página debemos ir a la parte inferior y presionar el boton que dice continue.

El contrato de licencia debe aceptarse presionando el boton ACCEPT.

Finalmente en la pantalla que aparece debe presionarse el boton que dice FTP download el archivo que se va a obtener es j2sdk-1_3_1_01-win.exe, debe tener cuidado en recordar donde se guarda este archivo. Para instalar se ejecuta este archivo y se responde a las opciones que el sistema va planteando (preferentemente deje los valores por omisión).

Hecho lo anterior se deben modificar las variables de ambiente PATH y CLASSPATH adicionando al final del archivo AUTOEXEC.BAT las lineas siguientes:


SET PATH=%PATH%;C:\JDK1.3.1_01\BIN
SET CLASSPATH=C:\JDK1.3.1_01\LIB

Después de hacer las modificaciones por favor reinicie su computadora.

Para las prácticas que se dan aquí, es conveniente que usted tenga un directorio en disco duro en donde las almacene, aproximadamente 5Mb.

Applets y Aplicaciones

Al programar en Java se deben distinguir dos tipos de programas que se pueden generar, por una parte estan los que se conocen como Aplicaciones y por otra los Applets.

En Java se manejan clases, entonces independientemente de ser una aplicación o un applet es una clase. El nombre de archivo externo y debe coincidir en mayúsculas y minúsculas con el nombre de la clase principal.

Para editar un archivo java puede utilizarse cualquier editor que maneje archivos en formato de sólo texto.

Las Aplicaciones son programas ideados para ejecutarse en la máquina donde se ejecuta el programa soportado por los programas nativos JVIEW o JAVA.

La característica de las aplicaciones es que cuentan con un método main que es el punto donde inicia la ejecución de un applet. En el ejemplo siguiente se tiene la clase hola, observar el método main.


class hola
{
public static void main(String args[])
{
System.out.println("hola amigos");
}
}

Para compilar una aplicación se utiliza el comando javac, para el ejemplo anterior es:

 

javac hola.java


el compilador generará en este caso el archivo hola.class que sirve para ejecutarla, esto se hace mediante el programa jview, para el ejemplo esto es:


jview hola.class


También es posible utilizar el programa java, en este caso se omite la extensión. Para el ejemplo esto es:


java hola

 


Los Applets por su parte son programas ideados para ejecutarse desde una página web escrita en HTML (Hypertext Markup Language). Como se sabe los programas que permiten visualizar páginas web se les llama navegadores y algunos de los más populares son Netscape y Explorer.

El método inicial para ejecutarse un applet es init cuando se omite se busca el método start, si también se omite se busca el método paint. Un ejemplo de applet se muestra a continuación en donde el primer método que se ejecuta es paint:


import java.awt.Graphics;

public class HolaApplet extends java.applet.Applet
{
public void paint( Graphics g )
{
g.drawString("Hola amigos", 5, 25 ); // Texto X Y
}
}

Para compilar una aplicación se utiliza el comando javac, para el ejemplo anterior es:

 

javac HolaApplet.java


el compilador generará en este caso el archivo HolaApplet.class pero para poder ejecutarlo se debe crear un archivo en HTML (Hypertext Markup Language) en donde se tenga una etiqueta APPLET especificando el ancho (width) y alto (height) que ocupará el applet al desplegarse. El archivo HTML que invoca al applet en este ejemplo se indica a continuación se llama HolaApplet.html:


<HTML>
<HEAD>
<TITLE>Applet Hola</TITLE>
</HEAD>
<BODY>
<P>Applet Hola</P>
<APPLET CODE="HolaApplet.class" WIDTH=300 HEIGHT=100>
</APPLET>
</BODY>
</HTML>

También es posible visualizar el resultado de un applet mediante el programa appletviewer indicandole como parámetro el archivo HTML invocador. Para el ejemplo esto es:

 

appletviewer HolaApplet.html


Otra opción es ejecutar el jview con la opción para applets con la opción /a, para el ejemplo esto es:


jview /a HolaApplet.html


Al colocar una página en Internet, al momento en que se llama a la página en el cliente (máquina que recibie la página) se activará el ejecutor de Java, en caso de faltar será imposible visualizar el applet. En ese caso se recomienda instalar o reinstalar su navegador preferido con la opción de Java activada.

Tipos de Datos Primitivos


En esta práctica se ilustran los diferentes tipos básicos de datos que se manejan en el lenguaje Java y que son int, char, short, float, boolean, double. Además de estos se pueden utilizar algunos objetos.

Las estructuras de control para el control del flujo del programa son if, switch, while, do-while, for.

Copie el programa variable.java que sigue, observe el resultado y haga algunas modificaciones.

class variable
{
public static void main(String args[])
throws java.io.IOException
{
// TIPOS DE VARIABLES
long lx = 0, ly = 0, lz = 0; // 64 bits -9,233,372,036,854,775,808
int x = 0, y=0, z=0; // 32 bits -2,147,483,648.. +2,147,483,647
short sx, sy, sz; // 16 bits -32768 .. +32767
byte bx, by, bz; // 8 bits -128 .. +127

float radio, area, fz; // 32 bits IEEE 754
double dox, doy, doz; // 64 bits IEEE 754

int cuenta ;
StringBuffer cadena = new StringBuffer(50) ;
char ch ;

Float f; // OBJETO FLOAT, ES DIFERENTE DEL TIPO float

System.out.println("VARIABLES Y OPERADORES EN JAVA");

// ENTERAS
x = 50;
z = 1000;
z *= x; // EQUIVALE A: z = z * x;

// CASTING=DISFRAZ SI SE ASIGNA UN (tipo) CAMBIA SU TIPO LA VARIABLE
sz = 5;
for(sx = 1; sx < 10; sx++ )
sz = (short)(sz * (short)10);

sx = 50; // enteras cortas
sz = 1000;
sz *= sx; // sz = sz * sx;

sz = (short)50000;
z = 50000;
// DESPLEGADO DE VARIABLES \n INDICA SALTO DE RENGLON
System.out.println("50,000 con short: " + sz
+ "\n50,000 con int: " + z + "\n");

// CALCULO DEL µREA DE UN CIRCULO
radio = (float)5.0;
area = (float)3.1416 * (radio * radio);
System.out.println("El rea de un circulo de radio: "
+ radio + " es: " + area) ;

// MANEJO DE BITS
bx = 0x7; // 00000111
bx <<= 4; // 01110000
bx += (byte)15; // 01111111
System.out.println("\nValor maximo positivo de un byte: " + bx);


x = 1; // 1
x <<= 2; // 100
System.out.println("\n1 con 2 corrimientos (100): " + x);
x <<= 1; // 1000
System.out.println("\n1 con 3 corrimientos (1000): " + x);

// OPERACIONES ARITMETICAS
x = 23;
y = x % 4;
z = x / 4;
System.out.println("\n23 % 4= " + y + "\n23 / 4= " + z + "\n");


// OPERACIONES LàGICAS
x = 0x7; // 111
y = 0x3; // 011
z = x & y;
System.out.println("\nx: " + x + " & y: " + y + " = z: " + z);

// LECTURA DEL TECLADO
System.out.println("DIGITA UNA CADENA: ");
cuenta = 0;
while( (ch = (char)System.in.read()) != '\n' )
{
cadena.append(ch);
cuenta++;
}
System.out.println("\nDigitaste una cadena de "
+ cuenta + " caracteres: " + cadena);

// INICIALIZA LA VARIABLE QUE CONTIENE LO QUE ESCRIBAS
cadena = new StringBuffer(10);

System.out.println("\n\nESCRIBE UN NUMERO ENTRE 0 Y 10: ");
cuenta = 0;
while( (ch = (char)System.in.read()) != '\n' )
{
cadena.append(ch);
cuenta++;
}

f = (Float)Float.valueOf(cadena.toString());
fz = f.floatValue();
System.out.print("\nEl n£mero es: " + fz);
if( fz > 5 )
System.out.println(" es mayor que 5");
else
System.out.println(" es menor que 5");

x = (int)fz;
switch(x)
{
case 2:
System.out.println("el n£mero es dos");
break;
case 4:
System.out.println("el n£mero es cuatro");
break;
case 6:
System.out.println("el n£mero es seis");
break;
case 8:
System.out.println("el n£mero es ocho");
break;
case 10:
System.out.println("el n£mero es diez");
break;
default:
System.out.println("el n£mero es impar o fuera de 1-10");
break;
}

System.out.print("Presiona una tecla "); // NO SALTA RENGLON
System.in.read();

// ITERACION USANDO WHILE
cuenta = 0;
while( cuenta < 20 )
{
System.out.print(cuenta + " ");
cuenta++; // EQUIVALE A: cuenta = cuenta + 1;
}
System.out.println("");

// ITERACION USANDO FOR
for( cuenta = 0; cuenta < 20; cuenta++ )
System.out.print(cuenta + " ");
System.out.print("\n");

// ITERACION USANDO DO-WHILE
cuenta = 0;
do
{
System.out.print(cuenta + " ");
cuenta++; // cuenta = cuenta + 1;
} while( cuenta < 20);

System.out.println("\n...es todo");
}
}


Objetos Gráficos


Generalmente se implantan programas en Java en donde se requiere de poder indicar los valores de algunos datos. En Java existen diferentes objetos gráficos que permiten realizar pantallas donde se indican datos. Algunos de estos objetos son: Label, TextField, Button, Choice, entre otros.

En esta práctica se muestran algunos de los elementos más comunes para observar dar click AQUÍ.

El código fuente de graficos.java se muestra a continuación:

import java.util.Date;
import java.lang.Math;
import java.awt.*;

public class graficos extends java.applet.Applet
{
Label etiqueta1 = new Label("Escribe un dato:");
Label etiqueta2 = new Label("r e s u l t a d o");
TextField campo1 = new TextField(20);
Button boton1 = new Button("VER RESULTADO");
Choice combo1 = new Choice();

public void init()
{
add(etiqueta1);
add(campo1);
add(boton1);
add(etiqueta2);
combo1.addItem("México");
combo1.addItem("Sonora");
combo1.addItem("Michoacán");
add(combo1);
}
public boolean action(Event ev, Object arg)
{
if (ev.target instanceof Button)
{
String identifica = (String)arg;

if (identifica.equals("VER RESULTADO") == true)
{
etiqueta2.setText(campo1.getText());
}
}
return true;
}

public void paint(Graphics g)
{

}
}

 


 


 

 

Hosted by www.Geocities.ws

1