Programando en Java

43

description

programacion

Transcript of Programando en Java

Elementos de un programa.

Algoritmos e instrucciones. Los algoritmos pueden considerarse

elementos esenciales de un programa. Un algoritmo es la solución de un

problema muy preciso y pequeño, en el cual se define la secuencia de

instrucciones que se debe seguir para resolverlo. Un programa es entonces un

conjunto de algoritmos, cada uno responsable de una parte de la solución del

problema global.

Un algoritmo, en general, es la secuencia ordenada de pasos para realizar una

actividad. Los algoritmos tienen diferentes representaciones: gráficamente a

través de diagramas de flujo, y de forma escrita con seudo_códigos y

programas.

Todas las actividades del ser humano, de las máquinas, del cosmos, de los

animales, etc, pueden ser representadas a través de un algoritmo.

Algoritmo para que una persona viaje desde el barrio Restrepo (Estación

Fucha), hasta la Universidad Piloto de Colombia (Estación Calle 45).

* Ingrese a la estación Fucha del Transmilenio.

* Identifique en el mapa de la estación donde está y el punto a donde

necesita ir (Fucha y Calle 45).

* Verifique qué línea se detiene en la estación destino (Calle 45).

* Ubique el lugar para abordar la línea y espere su paso.

* Suba al Transmilenio y bájese en la estación destino

* Diríjase a la Universidad Piloto de Colombia

Cuando es el computador el encargado de seguir el algoritmo se habla de

ejecutar. Las instrucciones para que puedan ser entendidas por el computador

deben ser escritas en un lenguaje que no den espacio a ninguna ambigüedad.

Este tipo de lenguajes se conocen como Lenguajes de Programación y son

muy restringidos y limitados, pero a su vez también son poderosos al observar

todo lo que se puede hacer con ellos. El conjunto de reglas que tiene un

lenguaje para decir las cosas se denomina Sintaxis del lenguaje.

Existen muchos lenguajes de programación en el mundo, cada uno con sus

propias características y ventajas. Java es un lenguaje de propósito general,

muy utilizado en la actualidad, tanto a nivel científico como empresarial.

Expresiones.

Una expresión es la manera en que expresa un lenguaje de programación

algo sobre el estado de un objeto. Es el medio para decir en un programa

algo sobre el mundo del problema.

Las expresiones aparecen dentro del cuerpo de los métodos y están

formadas por operandos y operadores. Los operandos pueden ser

atributos, parámetros, literales, constantes o llamadas de métodos,

mientras que los operadores son los que indican la manera de calcular el

valor de la expresión.

Operadores aritméticos.

+

- tipo + 5 * DIAS

* valor == 56.32

/ sueldo >= minimo

%Conforman expresiones aritméticas.

Operadores lógicos.

&&

|| tipo != PAPELERIA && valor == 56.32

! sueldo >= minimo || saldo < 560000

^

Operadores relacionales.

==

!= tipo != PAPELERIA

< valor == 56.32

> sueldo >= minimo

<=

>=Conforman expresiones lógicas.

Operadores a nivel de bits.

& and

| or

^ xor

<< corrimiento izquierda con 0s por derecha

>> corrimiento derecha con signo por izquierda

>>> corrimiento derecha con 0s por izquierda

Operadores de asignación.

++ -=

-- <<=

= >>=

*= >>>=

/= &=

%= |=

+= ^=

Operadores Unitarios. (Porque afectan directamente la entidad)

!

-

~

-- tipo != PAPELERIA && valor == 56.32

++ sueldo >= minimo || saldo < 560000

Operadores (métodos) sobre cadenas de caracteres.

+ suma la cadenas

equals compara las cadenas

charAr extracción de un caracter

cad1 + cad2

cad1.equals(cad2)

cad1.charAt(1)

Manejo de Variables.

Una variable es un espacio de memoria, para guardar información de tipo

específico, identificado por un nombre. El objetivo de las variables es

permitir manejar cálculos parciales en el interior de un método.

Las variables se crean en el momento en que se declaran y se destruyen

automáticamente al llegar al final del método que las contiene. Por esta

razón es imposible utilizar el valor de una variable por fuera del método

donde fue declarada.

Se suelen usar variables por tres razones principales:

1. Por que es necesario calcular valores intermedios.

2. Por eficiencia, para no pedir dos veces el mismo servicio al mismo

objeto.

3. Por claridad en el código.

Para declarar una variable se utiliza el siguiente formato:

tipo nombre;

También puede ser:

tipo nombre = valor_inicial;

El tipo corresponde a cualquier tipo de dato conocido: int, double, String,

char, etc., el nombre es asignado por el usuario a gusto y el valor inicial

puede ser un literal, una constante o variable, una expresión, un método

que retorne valor. Ejemplo:

int valor1;

int valor2 = 9;

int valor3 = valor2;

double cantidad = darCantidad();

double total = ( darCantidad() * Num_prod )+ 5500.5;

Cuando la variable ya fue declarada y se necesita asignarle un valor

diferente al que tiene almacenado, se utiliza una sentencia de asignación,

con las mismas condiciones de su declaración:

valor1 = 199;

valor3 = ( valor2 * valor1 ) / 2;

cantidad = darCantidadDescuento();

total = ( darCantidad() * Num_prod ) - valor3;

La asignación de valores a las variables pueden utilizar todos los

operadores de asignación : +=, -=, *=, /=, etc,.

taza += cantidad 10;

Nuevo *= 1.10;

Estructuras selectivas.

Selectiva simple o sencilla.

if ( condición )

{

instrucciones;

}

Selectiva doble o compuesta.

if ( condición )

{

instrucciones;

}

else

{

instrucciones;

}

Selectiva en cascada.

if ( condición 1 )

{

instrucciones 1;

}

else if ( condición 2 )

{

instrucciones 2;

}

:

else if ( condición n )

{

instrucciones n;

}

else

{

instrucciones else;

}

Selectiva múltiple.

switch ( valor )

{

case valor1 :

instrucciones 1;

break;

case valor2 :

instrucciones 2;

break;

:

case valorn :

instrucciones n;

break;

default :

instrucciones;

}

Clases y Objetos.

Las Clases son elementos que definen la estructura de un programa,

representan entidades del mundo del problema. Se puede decir que los

algoritmos están dentro de las clases, y que son éstas las que establecen la

forma como los algoritmos colaboran para resolver el problema.

algoritmos

clase 1

algoritmos

clase 2

algoritmos

clase 3Nombre 1 Nombre 2

Programa

Es claro que en un programa hay una clase por cada entidad del mundo

problema, pero ¿que pasa si hay varias “instancias”? de algunas de estas

entidades. (Varios ejemplares).

Un Objeto es una instancia de una clase. La clase define los atributos o

características que debe tener. Cada objeto tiene sus propios valores para cada

uno de los atributos. El conjunto de valores de los atributos se denomina el

estado del objeto. Esta es la base de la POO (Programación orientada a objetos)

Para aclarar los conceptos se puede decir que una clase define un tipo de

elemento del mundo, mientras que un objeto representa un elemento individual.

Ejemplo:

día = 6

mes = 3

año = 1975

:Fecha

fechaIngreso

nombre = “Juan”

apellido = “Pérez”

sexo = Masculino

salario = 2.500.000

:Empleado

día = 8

mes = 1

año = 1993

:Fecha

fechaNacimiento

Clase

FechaEmpleadofechaNacimiento

nombre

apellido

sexo

salario

día

mes

añofechaIngreso

Objeto

El lenguaje Java.

Lenguaje orientado a objetos, creado por Sun Microsystems en 1955, muy

utilizado en la actualidad gracias a su independencia de la plataforma en que se

ejecuta. Java es un lenguaje de propósito general, con el que se pueden

desarrollar desde programas pequeños para resolver problemas simples, hasta

grandes aplicaciones industriales o de apoyo a la investigación.

Un programa java está formado por un conjunto de clases. Cada clase se debe

guardar en un archivo distinto, cuyo nombre debe ser igual al nombre de la clase

y cuya extensión debe ser java. Por ejemplo la clase Empleado debe ser

guardada en el archivo empleado.java.

Empleado public class Empleado

{

// Aquí va la declaración de la clase Empleado

}

En el lenguaje de programación java todo lo que va entre dos corchetes { } se

llama un bloque de instrucciones. Entre los corchetes de la clase va la

declaración de la clase. Allí deben hacerse explícitos atributos y algoritmos de la

clase. También es posible agregar comentarios, que serán ignorados por el

computador al ejecutar el programa pero importantes para el programador para

reconocer su trabajo. Para los comentarios se utilizan dos caracteres slash se //

empezando la línea, o encerrando la frase entre /** y */.

Como un programa puede estar compuesto por miles de clases, java tiene el

concepto de paquete, a través del cual es posible estructurar las clases por

grupos jerárquicos. Toda clase de java empaquetada debe comenzar por la

definición del paquete en el cual está situada.

package universidad.programacion.sistemas;

/** Esta clase representa un empleado */

public class Empleado

{

// Aquí va la declaración de la clase Empleado

}

El nombre del paquete es una

secuencia de identificadores

separados por un punto.

En todo lenguaje de programación, existen las llamadas palabras reservadas

(package, public, class), que son palabras propias del lenguaje y que no pueden

ser utilizadas para nombrar clases o atributos en un programa. Un elemento se

declara como public cuando se quiere que pueda ser visto por otras clases.

Tipos de Datos.

Cada lenguaje de programación cuenta con un conjunto de tipos de datos a

través de los cuales se puede representar los atributos de una clase. Algunos de

java son:

Las cadenas de caracteres se pueden almacenar en matrices, o bien en objetos

String.

Tipos enteros

byte, short, int, long y char.

Tipos reales

float, double.

Tipo lógicos

boolean.

En java, en el momento de declarar un atributo, es necesario declarar el tipo de

datos al cual corresponde, utilizando la sintaxis del siguiente ejemplo:

package universidad.programacion.sistemas;

/** Esta clase representa un empleado */

public class Empleado

{

// Atributos ...

private String nombre;

private String apellido;

private float salario;

private int sexo;

}

Para evitar que un atributo sea manipulado por fuera de la clase, se declara

como privado (private).

Empleado

String nombre;

String apellido;

int salario;

int sexo;

En java, las asociaciones se declaran de manera similar a los atributos.

Utilizando el nombre de la asociación como nombre del atributo y el nombre de la

clase como su tipo, como en el siguiente ejemplo:

package universidad.programacion.sistemas;

/** Esta clase representa un empleado */

public class Empleado

{

// Atributos ...

private String nombre;

private String apellido;

private float salario;

private int sexo;

private Fecha fechaNacimiento;

private Fecha fechaIngreso;

}

FechaEmpleadofechaNacimiento

String nombre;

String apellido;

int salario;

int sexo;

int día;

int mes;

int año;fechaIngreso

Constantes. Las constantes se utilizan para: definir el dominio de un

atributo, cuando se quiere asociar un número a cada valor posible de una

característica; Para representar valores inmutables, si se quiere

representar valores que no van a cambiar durante la ejecución de un

programa.

En java se definen las constantes así:

public class Producto

{

private final static int PAPELERIA = 1;

private final static int SUPERMERCADO = 1;

private final static int DROGUERIA = 1;

private final static double IVA_PAPEL = 0.16;

// ...

}

Declarar una constante supone anteponer el calificador final. Y static si

pertenece a la clase como en el ejemplo y no a un método, donde no se

podrá usar este calificador.

Métodos.

Los algoritmos de la clase en java, se les puede llamar métodos. Cada algoritmo

pretender resolver un problema puntual, dentro del contexto del problema global

del problema que se quiere resolver. También se puede ver un método como un

servicio de la que la clase debe prestar a las demás clases del modelo (o a ella

misma), para que ellas puedan resolver sus respectivos problemas. Un método

está compuesto por cuatro elementos:

Un nombre. Identifica el método.

Una lista de parámetros. Es el conjunto de valores (cada uno con su tipo)

necesarios para poder resolver el problema puntual. Pueden no existir.

Un tipo de respuesta. Indica el tipo de datos al que pertenece el resultado que

va a retornar el método. Si no hay respuesta se utiliza el tipo void.

El cuerpo del método. Es la lista de instrucciones que representa el algoritmo

que resuelve el problema puntual.

public void modificarSalario (float nuevoSalario)

{

// Aquí va el cuerpo del método

}

El encabezado del método (Un método sin cuerpo) se denomina signatura.

public int calcularPrestaciones ()

Para mostrar las signaturas de los métodos de una clase en sintaxis UML

tenemos:

FechaEmpleado

fechaNacimientoString nombre

String apellido

int sexo

int salario

int día

int mes

int año

fechaIngresovoid cambiarSalario(int nuevoSalario)

int darSalario()

int calcularPrestaciones()

int darDía()

int darMes()

int darAño()

En el cuerpo de un método van las instrucciones que resuelven un problema

puntual o prestan un servicio a otras clases. El computador obedece las

instrucciones, secuencialmente hasta el final del cuerpo del método. Una de esas

instrucciones pude ser la Instrucción de retorno (return), con la que le decimos

al método cual es el resultado que debe dar como solución del problema.

public class Empleado

{

// Atributos

private String nombre;

private String apellido;

private float salario;

private int sexo;

private Fecha fechaNacimiento;

private Fecha fechaIngreso;

// Métodos

public int darSalario()

{

return salario;

}

}

En el cuerpo del método únicamente

se puede hacer referencia a los

atributos del objeto para el cual se

está resolviendo el problema y a los

parámetros, que representan la

información externa al objeto que se

necesita para resolver el problema

puntual.

Cuando alguien llama un método sobre un objeto, éste “busca” dicho método en

la clase a la que pertenece y ejecuta las instrucciones que allí aparecen

utilizando sus propios atributos.

Los métodos que no están hechos para calcular un valor, sino para modificar el

estado del objeto, utilizan en la Instrucción de asignación cualquiera de los

operadores de asignación ( =, +=, -=, *=, /=, etc.. ) para definir el nuevo valor del

atributo.

public class Empleado

{

. . .

public void modificarSalario(int nuevoSalario)

{

salario = nuevoSalario;

}

public int calcularSalarioAnual()

{

return salario * 12;

}

}

En algunos casos, como parte de la solución del problema, es necesario llamar

un método de un objeto con el cual existe una asociación. Por ejemplo: Se quiere

saber el año en que un empleado ingresó a la empresa.

public class Fecha

{

. . .

public int darAño()

{

return año;

}

}

public class Empleado

{

. . .

public void problema()

{

int valor = fechaIngreso.darAño();

}

}

El método darAño() de la clase Fecha

retorna el valor que aparece en el

atributo “año” del objeto sobre el cual

se hace la invocación.

Se invoca el método darAño() sobre

el objeto de la clase Fecha que

representa la fecha de ingreso. Para

pedir un servicio a través de un

método se debe dar el nombre de la

asociación, el nombre del método

que se quiere usar, separados por

punto (.) y un valor para cada uno de

los parámetros que hay en su

signatura (ninguno en este caso).

De la misma manera que un objeto puede invocar un método de otro objeto con

el cual tiene una asociación, también puede dentro de uno de sus métodos,

invocar otro método de su misma clase. Ejemplo:

public class Empleado

{

. . .

public int calcularSalarioAnual()

{

return salario*12;

}

public double calcularImpuesto()

{

int total = calcularSalarioAnual();

return total * 19.5 / 100;

}

}

Para invocar un método sobre el

mismo objeto, basta con utilizar su

nombre sin necesidad de explicar

sobre cual objeto queremos hacer la

llamada y la lista de valores para los

parámetros. Por defecto se hace

sobre él mismo.

Total es una variable que almacena el

valor del salario anual dentro del

cuerpo del método.

Un método puede estar acompañado de un conjunto de parámetros, de los

cuales es importante tener en cuenta algunas consideraciones.

Un método necesita parámetros cuando la información que tiene el objeto en sus

atributos no es suficiente para resolver el problema

En la signatura del método se define el tipo de dato del parámetro y se le asocia

un nombre.

El parámetro es utilizado con su nombre de la misma manera como se utilizan

los atributos.

En ningún caso se puede utilizar el parámetro por fuera del cuerpo del método

que lo definió.

Al llamar al método, se deben pasar tantos valores como parámetros esté

esperando el método. (Constantes, atributos, expresiones, etc..)

Los valores que se pasan tienen correspondencia directa de orden y tipo de dato

con los parámetros del método.

public class C2

{

private int atr1;

private C1 obj;

public void m2(int x)

{

obj.m1( x, 34+atr1, ”prueba” );

}

}

public class C1

{

public void m1(int a, int b, String c)

{

...

}

}

Los métodos y sus responsabilidades.

Los métodos de una clase se clasifican en tres tipos, según la operación

que realicen:

Métodos constructores. Tienen la responsabilidad de inicializar los valores

de los atributos de un objeto durante su proceso de creación.

Métodos modificadores. Tienen la responsabilidad de cambiar el estado de

los objetos de la clase. Son responsables de “hacer”.

Métodos analizadores. Tienen la responsabilidad de calcular información a

partir del estado de los objetos de la clase. Son los responsables de

“saber”.

Constructores.

Para inicializar los valores de un objeto, las clases permiten la definición

de métodos constructores, los cuales son invocados automáticamente en

el momento de ejecutar la instrucción de creación.

public Producto()

{

tipo=0;

nombre=“”;

valor Unitario=0.0;

cantidadBodega=0;

cantidadMinima=0;

totalProductosVendidos=0;

}

Un método constructor tiene dos reglas

fundamentales:

1. Se debe llamar igual que la clase y

2. No puede tener ningún tipo de

retorno, puesto que su único

objetivo es dar un valor inicial a los

atributos.

Puesto que en muchos casos los valores por defecto no tienen sentido, es

posible agregar parámetros al constructor, lo que obliga a todo el que

quiera crear una instancia de esa clase a definir los valores iniciales.

public Producto(String tip, String nom, double val, int cant, int min)

{

tipo=tip;

nombre=nom;

valor Unitario=val;

cantidadBodega=cant;

cantidadMinima=min;

totalProductosVendidos=0;

}

La instrucción que permite crear una instancia de la clase sería:

Producto p=new Producto(“PAPELERÍA”, ”Lápiz”, 500.0, 30, 9)

Los objetos para estos dos casos se crearían de la siguiente forma:

nombre = “ “

tipo = “ “

valorUnitario = 0.0

cantidadBodega = 0

cantidadMinima = 0

totalProductosVendidos = 0

:Producto

Con constructor sin parámetros:

Producto p = new Producto()

nombre = “Lápiz”

tipo = “PAPELERIA”

valorUnitario = 500.0

cantidadBodega = 30

cantidadMinima = 9

totalProductosVendidos = 0

:Producto

Con constructor con parámetros:

Producto p = new Producto( ... )

Diseño de la Solución.

En la construcción de un programa, la actividad de diseño sigue los siguientes

pasos:

Se realiza un bosquejo inicial de la solución, que es el modelo conceptual del

mundo del problema.

Se verifican los requerimientos no funcionales y el costo de la implementación.

Se realizan diagramas detallados escritos en UML.

En cada refinamiento se introduce o se ajustan algunos de los elementos del

programa par irse aproximando a la solución adecuada.

Diseño de la solución

Requerimientos funcionales

Mundo del problema

Requerimientos no funcionales

Interfaz usuario

Arquitectura de la solución

Diseño de las clases

Análisis del problema Diseño del programa

La Interfaz de usuario es la parte de la solución que permite que los usuarios

interactúen con el programa. A través de la interfaz, el usuario puede utilizar las

operaciones del programa que implementan los requerimientos funcionales.

Cuando se quiere resolver un problema, es bueno contar con

mecanismos que ayuden a dividirlo en problemas más pequeños. Estos

problemas son menos complejos que el original, por lo tanto más fáciles

de resolver. En programación es importante tener un diseño de alto nivel

en el que aparezcan a grandes rasgos los elementos que conforman la

solución, para poder pegar con facilidad los problemas pequeños al

definir la solución general. Este diseño se denomina la arquitectura de

la solución (para nuestro caso la identificación de los paquetes y las

clases que los componen).

El diseño de las clases es mostrar en detalle cada

una de las clases que van a hacer parte del

programa. Para esto se utiliza el diagrama de clases

de UML, con toda la información que interviene:

nombre, atributos y signaturas de los métodos.

Construcción de la Solución.

En la etapa de construcción se deben escribir todos los elementos todos los

elementos que forman parte del programa que fue diseñado en la etapa de

Diseño de la solución, y que resuelven el problema planteado por el cliente. Este

programa es instalado en el computador del usuario y luego ejecutado.

Construcción de la solución

Interfaz de usuario

Arquitectura de la solución

Diseño de las clases

Archivos fuente Java

Archivos compilados

Archivos de documentación

Organización y convenciones

Archivos empaquetados

Archivos ejecutables

Cliente

Usuario

Construcción de un Programa.

Para la construcción de un programa se define una organización (Se debe

conocer siempre donde buscar un elemento de la solución) y un conjunto de

convenciones (Los archivos deben llamarse siempre de la misma forma para su

fácil identificación). Nuestro elementos están siempre en archivos, y la estructura

de organización se basa en el sistema de directorios.

Proyectos y Directorios. Un proyecto de desarrollo va siempre en un directorio,

cuyo nombre indica su contenido. (Por ejemplo n1_empleado).

Dentro del directorio principal se encuentran siete directorios, con el siguiente

contenido:

Directorio bin. (Por binario). Contiene todos los archivos ejecutables del

proyecto (archivos.bat), que permiten entre otras cosas, ejecutar el programa,

ejecutar las pruebas y generar la documentación del código.

build.bat. Permite compilar el programa (todos los .java) y generar el archivo

empaquetado (.jar). Que será instalado en el computador del usuario.

buildTest.bat. Permite compilar las pruebas del programa y generar el respectivo

archivo empaquetado (.jar).

clean.bat. Borra todos los archivos del proyecto que pueden ser calculados a

partir de otros. .class, .jar, y .html

cleanTest.bat. Borra todos los archivos de las pruebas que pueden ser

calculados a partir de otros.

doc.bat. Genera la documentación del programa (archivos .html), utilizando la

herramienta javadoc.

run.bat. Ejecuta el programa. Es el único archivo .bat que va al computador del

usuario.

runTest.bat. Ejecuta las pruebas del programa.

Directorio source (src). Contiene los archivos fuente, en los que está la

implementación en java de cada una de las clases. Cada clase está en un

archivo distinto dentro de un directorio que refleja la jerarquía de paquetes.

Directorio classes. Contiene los archivos .class, que almacenan el código

binario (bytecode) producto de compilar las clases java. Este directorio tiene la

misma jerarquía de directorios que se usa para los archivos fuente.

Directorio test. Contiene los archivos que hacen las pruebas automáticas del

programa. En su interior hay varios directorios, con archivos .class, .jar y .java.

Directorio docs. En este directorio hay dos subdirectorios:

specs. Contiene todos los documentos de diseño. Por ejemplo: El archivo de

descripción, El archivo de requerimientos, El archivo del dieño, Los archivos

gráficos con los diagramas de clases, etc.

api. Contiene los archivos de documentación de las clases del programa. Estos

son generados automáticamente por la aplicación javadoc. Con el archivo básico

index.html se puede navegar por toda la socumentación.

Directorio lib. Contiene el archivo empaquetado para instalar en el computador

del usuario. Este archivo tiene la misma estructura interna de un archivo .zip.

Directorio data. Contiene archivos con información que usa el programa, ya sea

para almacenar datos (por ejemplo una base de datos) o para leerlos (por

ejemplo una imagen).

Eclipse: Un ambiente de desarrollo.

Un ambiente o entorno de desarrollo

es una aplicación que facilita la

construcción de los programas.

Principalmente, debe ayudar a escribir

código, a compilarlo y a ejecutarlo.

Eclipse es un ambiente de múltiples

usos, uno de los cuales es ayudar al

desarrollo de programas escritos en

java. Es una herramienta de uso

gratuito, muy flexible y adaptable a las

necesidades y gustos de los

programadores.

Dentro de cada uno de los proyectos de desarrollo de java del curso aparecen

los siguientes tipos de archivos:

.bat Archivo de texto, concomandos para el S.O.

Desde la consola decomandos, o con dobleclic en el nombre delarchivo.

Con cualquierEditor de Texto.

Tipo Que contiene? Cómo se usa? Cómo se crea?

.classArchivo que contieneel código compilado deuna clase java.

Lo usa el computadorpara poder ejecutar unprograma.

Con el programacompilador dellenguaje y elarchivo .java

.docArchivo que tiene partede la especificación delproblema (enunciado yrequerimientos ).

Se requiere MicrosoftWord para ejecutarlo, ocon doble clic en elarchivo.

Se modifica ycrea desde Word

.htmlArchivo que contienela documentación deuna clase, generadaautomáticamente por lautilidad javadoc.

Se requiere tenerinstalado un navegadorde internet. Basta undoble clic para abrirlo.

La crea javadoc,que extrae yorganiza de unaclase en java, ladocumentación

.jarArchivo donde estánempaquetados todoslos archivo .class de unprograma.

Lo usa el computadorpara poder ejecutar unprograma.

Se construyecon la utilidadjar, que trae elcompilador java.

Tipo Que contiene? Cómo se usa? Cómo se crea?

.javaArchivo que contienela implementación deuna clase en java.

Se le pasa al compiladorpara que cree un .class,que ejecutará elcomputador.

Cualquier Editorde texto o Amb.desarrollo comoEclipse, Jcreator

.mdlArchivo con todos losdiagramas de clase yde arquitectura delprograma.

Se requiere RationalRose para ejecutarlo, ocon doble clic en elarchivo.

Se modifica yse crea desdeRational Rose.

.jpgArchivo que tiene unaimagen. Se usa paramostrar los diagramasdel programa.

Con cualquier programade manejo de imágenes,incluso navegadores deInternet.

Se crea concualquier Editorde imágenes.

.zip Archivo donde estánempaquetados un buengrupo de archivos.

Aplicaciones para podercomprimir como ZipCentral, Winrar oWinzip.

Herramientas decompresión.