Guía Básica de Java para Principiantes
Guía Básica de Java para Principiantes
Nota:
Este tutor est basado en una traduccin-adaptacin del
tutorial de Sun que puedes encontrar: aqu
Tu Primera 'Taza' de Java
La Primera 'Taza' de Java
En Windows
En UNIX
En Mac OS
Por donde Empezar?
Por dnde Empezar?
El compilador Javac
El visualizador de Applets
El intrprete Java
El decompilador Javap
Conceptos Bsicos
Conceptos Bsicos de Programacin Orientada a Objetos
Caractersticas del en!ua"e
Variables y Tipos de Datos
Operadores
Expresiones
Control de Flujo
Arrays y Cadenas
#$"etos% Clases e &nter'aces
Crear Objetos
Utilizar Objetos
Eliminar Objetos no utilizados
Declarar Clases
El cuerpo de la Clase
Declarar Variables Miembro
Declarar Mtodos
Pasar Argumentos a un Mtodo
El cuerpo de un Mtodo
Miembros de la Clases y del Ejemplar
Control de Acceso a Miembros
Constructores
Construir un Metodo Finalize
Subclases y SuperClases
Crear una Subclase
Sobreescribir Mtodos
Clases y Mtodos Finales
Clases y Mtodos Abstractos
La clase Object
Qu es un Interface?
Crear un Interface
Utilizar un Interface
Usar un Interface como un Tipo
Crear Paquetes de Clases
Utilizar Paquetes
Los Paquetes Internos del JDK
Cambios en el JDK 1.1.x
a clase (trin!
String y StringBuffer
Por qu dos clases String?
Crear String y StringBuffer
Mtodos Accesores
Modificar un StringBuffer
Convertir Objetos a Stings
Los Strings y el Compialdor Javac
Notas sobre el JDK 1.1
)tri$utos del Pro!rama
Atributos del Programa
Seleccionar y Utilizar Propiedades
Argumentos de la Lnea de Comandos
Convenciones
Analizar Argumentos
Notas sobre el JDK 1.1
*ecursos del (istema
Recursos del Sistema
Utilizar la Clase System
Los Streams de I/O Estndard
Propiedades del Sistema
Recoleccin de Basura
Otros Mtodos de la Clase System
Notas sobre el JDK 1.1
+ane"o de Errores
Manejo de Errores utilizando Excepciones
Qu es una Excepcin?
Primer encuentro con las Excepciones
Declarar o Expecificar
Tratar con Excepciones
El ejemplo ListOfNumbers
Capturar y Manejar Excepciones
El bloque try
Los bloques catch
El bloque finally
Juntndolo todo
Expecificar Excepciones
La sentencia throw
La clase Throwable
Crear Clases de Excepciones
Excepciones en Tiempo de Ejecucin
Notas sobre el JDK 1.1
T,reads de Control
Threads de Control
Qu es un Thread?
Sencillo Thread de Ejemplo
Atributos de un Thread
El cuerpo de un Thread
El applet del Reloj
Estados de un Thread
Prioridad de un Thread
Threads Servidores
Grupos de Threads
La clase ThreadGroup
Programas Multi-Thread
Sincronizacin de Threads
Monitores Java
Los monitores Java son reentrantes
Los mtodos wait() y notify()
Notas sobre el JDK 1.1
Canales de &-#
Streams de I/O
Primer encuentro con la I/O en Java
Introduccin a los Streams
Utilizar Streams de I/O
Implementar Tuberas
I/O de Ficheros
I/O sobre Memoria
Concatener Ficheros
Streams Filtrados
DataInputStream y DataOutputStream
Escribir Streams Filtrados
Ficheros de Acceso Aleatorio
Utilizar Ficheros de Acceso Aleatorio
Filtros para Ficheros de Acceso Aleatorio
Notas sobre el JDK 1.1
os )pplets
Introduccin a los Applets
Anatoma de un Applet
Importar Clases y Paquetes
Definir una subclase de Applet
Implementar mtodos en un Applet
Ejecutar un Applet
Descripcin de un Applet
El ciclo de vida de un Applet
Mtodos para Millestones
Mtodos para Dibujar y manejar Eventos
Usar Componentes UI
Threads en un Applet
Ejemplos
Qu puede y qu no puede hacer un Applet
Aadir un Applet a una pgina HTML
Sumario
Crear un Interface de Usuario
Crear un GUI
Ejecutar Sonidos
Usar Parmetros en en un Applet
Parmetros a Soportar
Escribir cdigo para soportar Parmetros
Obtener informacin sobre Parmetros
Leer las Propiedades del Sistema
Mostrar cadenas de Estado
Diagnstico en la Salida Estndard
Comunicarse con otros programas
Enviar Mensajes a otros Applets
Comunicacin con el Navegador
Aplicaciones en el lado del Servidor
Capacidades y Restricciones en un Applet
Restricciones de Seguridad
Capacidades de un Applet
Finalizar un Applet
Antes de Liberar un Applet
Finalizacin perfecta de un Applet
Problemas Comunes con los Applets (y sus soluciones)
Notas sobre el JDK 1.1
&nter'ace .r'ico de /suario
Introduccin al UI de Java
Componentes de la clase AWT
Otras Clases AWT
La Anatoma de un programa basado en GUI
Las clases del Programa Ejemplo
La Herencia de Componentes
Dibujo
Manejo de Eventos
Utilizar Componentes AWT
Reglas Generales
Utilizar Button
Utilizar Canvas
Utilizar Checkbox
Utilizar Choice
Utilizar Dialog
Utilizar Frame
Utilizar Label
Utilizar List
Utilizar Menu
Utilizar Panel
Utilizar Scrollbar
Utilizar Campos y Areas de Texto
Detalles de la Arquitectura de Componentes
Problemas con los Componentes
Distribuir Componentes
Utilizar Manejadores de Distribucin
Reglas Generales
BorderLayout
CardLayout
FlowLayout
GridLayout
GridBagLayout
Especificar Restricciones
El Applet de Ejemplo
Crear un Controlador Personalizado
Posicionamiento Absoluto
Problemas con los controladores
Introduccin a los Grficos del AWT
Dibujar Formas Sencillas
Dibujar Texto
Utilizar Imagenes
Cargar Imagenes
Mostrar Imagenes
Manipular Imagenes
Utilizar un Filtro
Escribir un Filtro
Realizar Animaciones
Crear un Bucle
Animar Grficos
Eliminar el Parpadeo
Sobreescribir el mtodo update()
Doble Buffer
Mover una Imagen
Mostrar Secuencias de Imagenes
Aumentar el rendimiento de una Animacin
Problemas comunes con los Grficos
.r'icos 01
Introduccin al API 2D de Java
Dibujado Java 2D
Sistema de Coordenadas
Formas
Texto
Imgenes
Imprimir
Mostrar Grficos con Graphics2D
Rellenar y patronar grficos primitivos
Transformar formas texto e imgenes
Recortar la regin de dibujo
Componer Grficos
Controlar la Calidad del dibujado
Construir formas complejas con geomtricos primitivos
Soportar Interaccin del Usuario
Trabajar con Texto y Fuentes
Crear y Derivar Fuentes
Dibujar mltiples lneas de texto
Manipular y Mostrar Imgenes
Modo Inmediato con BufferedImage
Filtrar un BufferedImage
Usar un BufferedImage para doble buffer
Imprimir
Imprimir en Java
Imprimir el contenido de un componente
Mostrar el dilogo Page Setup
Imprimir una coleccin de pginas
Resolver problemas comunes con los grficos en 2D
Tra$a"o en *ed
Trabajo en la Red
Introduccin al Trabajo en Red
Trabajo en Red Bsico
Lo que ya podras conocer sobre el trabajo en Red
Trabajar con URLs
Qu es una URL?
Crear una URL
Analizar una URL
Leer desde una URL
Conectar con una URL
Leer y Escribir utilizando una URL
Todo sobre los Sockets
Qu es un Socket?
Leer y Escribir utilizando un Socket
Escribir el lado del servidor de un Socket
Todo sobre los Datagramas
Qu es un Datagrama?
Escribir Datagramas Cliente y Servidor
Controlador de Seguridad
Introduccin a los Controladores de Seguridad
Escribir un Controlador
Instalar un Controlador
Decidir los Mtodos a sobreescribir del SecurityManager
Notas sobre el JDK 1.1
os Beans
JavaBeans
Introduccin a los Beans
Conceptos bsicos
El Kit de Desarrollo de beans
Utilizar BeanBox
Arrancar y utilizar BeanBox
Mens de BeanBox
Utilizar BeanBox para generar Applets
Escribir un Bean sencillo
Propiedades
Propiedades sencillas
Propiedades Compartidas
Propiedades Restringidas
Propiedades Indexadas
Manipular Eventos en BeanBox
El Interface BeanInfo
Personalizar Beans
Persistencia de un Bean
Nuevas Caractersitcas
(ervlets
Introduccin a los Servlets
Arquitectura del paquete Servlet
Un Servelt Sencillo
Ejemplos
Interaccin con los Clientes
Peticiones y Respuestas
Manejar Peticiones GET y POST
Problemas con los Threads
Proporcionar Informacin de un Servlet
El Ciclo de Vida de un Servlet
Inicializar un Servlet
Destruir un Servlet
Guardar el estado del Cliente
Trayectoria de Sesin
Utilizar Cookies
La utilidad ServletRunner
Propiedades de un Servlet
Arrancar Servletrunner
Ejecutar Servlets
Desde un Navegador
Desde una Pgina HTML
Desde otro Servlet
&nternacionalizaci2n
Mercados Globales
Internacionalizacin
Localizacin
Datos Dependientes de la Cultura
Un Ejemplo Rpido
Antes de la Internacionalizacin
Despus de la Internacionalizacin
Ejecutar el programa
Internacionalizar el ejemplo
Crear el fichero de propiedades
Definir la Localidad
Crear el ResourceBundle
Buscar el texto en el ResourceBundle
Seleccionar la Localidad
Crear una Localidad
Identificar las Localidades disponibles
La Localidad por defecto
El mbito de la Localidad
Aislar Objetos Especficos en un ResourceBundle
La clase ResourceBundle
Preparar un ResourceBundle
Ficheros de Propiedades
Utilizar un ListResourceBundle
Formatear Nmeros y Moneda
Usar Formatos Predefinidos
Formatear con Patrones
Formatear Fechas y Horas
Usar Formatos Predefinidos
Formatear con Patrones
Cambiar simbolos en el formato de Fechas
Formatear Mensajes
Tratar con mensajes concatenados
Manejar Plurales
Trabajar con Excepciones
Manejar mensajes de las Excepciones
Crear subclases de Exception independientes de la Localidad
Comparar Strings
Realizar comparaciones independientes de la Localidad
Reglas personales de comparacin
Aumentar el rendimiento de la comparacin
Detectar Lmites de Texto
La clase BreakIterator
Lmite de Caracter
Lmite de Palabra
Lmite de Sentencia
Lmite de Lnea
Convertir texto no Unicode
Bytes Codificados y Strings
Streams de Bytes y de Caracter
Un lista de chequeo para Internacionalizar una programa existente
3ic,eros J)*
Formato de Fichero JAR
Usar ficheros JAR: bsico
Crear un fichero JAR
Ver el contenido de un fichero JAR
Extraer el contenido de un fichero JAR
Modificar un fichero de Manifiesto
Ejecutar software contenido en un fichero JAR
Entender el Manifiesto
Firmar y Verificar ficheros JAR
Firmar un Fichero JAR
Verificar un Fichero JAR Firmado
Entender la Firma y la Verificacin
+4todos Nativos
El JNI de Java
Paso a Paso
Paso 1: Escribir el cdigo Java
Paso 2: Compilar el cdigo Java
Paso 3: Crear el fichero .H
Paso 4: Escribir el Mtodo Nativo
Paso 5: Crear una Librera Compartida
Paso 6: Ejecutar el Programa
Implementar Mtodos Nativos
Declarar Mtodos Nativos
Los tipos Java en Mtodos Nativos
Acceder a Strings Java en Mtodos Nativos
Trabajar con Arrays Java en Mtodos Nativos
Llamar a Mtodos Java
Acceder a campos Java
Manejar errores Java desde Mtodos Nativos
Referencias Locales y Globales
Threads y Mtodos Nativos
Invocar a la Mquina Virtual Java
Programacin JNI en C++
)cceso a Bases de 1atos: J1BC
Acceso a Bases de Datos
JDBC Bsico
Empezar
Seleccionar una base de datos
Establecer una Conexin
Seleccionar una Tabla
Recuperar Valores desde una Hoja de Resultados
Actualizar Tablas
Utilizar Sentencias Preparadas
Utilizar Uniones
Utilizar Transaciones
Procedimientos Almacenados
Utilizar Sentencias SQL
Crear Aplicaciones JDBC Completas
Ejecutar la Aplicacin de Ejemplo
Crear un Applet desde una Aplicacin
El API del JDBC 2.0
Inicializacin para utilizar JDBC 2.0
Mover el Cursor sobre una hoja de Resultados
Hacer Actualizaciones en una hoja de Resultados
Actualizar una Hoja de Resultados Programticamente
Insertar y borrar filas Programticamente
Insertar una fila
Borrar una fila
Hacer Actualizaciones por Lotes
Usar tipos de datos SQL3
Caracersticas de Extensin Estndard
&nvocaci2n *emota de +4todos: *+&
RMI
Introduccin al RMI
Escribir un Servidor de RMI
Disear un Interface Remoto
Implementar un Interface Remoto
Crear un Programa Cliente
Compilar y Ejecutar el Ejemplo
Compilar el Programa de Ejemplo
Ejecutar el Programa de Ejemplo
Cam$ios en el J15 67678
Cambios en el JDK 1.1.x
Qu hay de nuevo?
Internacionalizacin
Seguridad y los Applets firmados
Ampliacin del AWT
JavaBeans
Ficheros JAR
Ampliacin de la Red
Ampliacin de la I/O
El paquete Math
RMI
Serializar Objetos
Reflexin
Bases de Datos
Clases Internas
Interface Nativo
Aumento de Rendimiento
Miscelnea
Notas sobre JDK 1.1
Cambios en el GUI
Nuevo modelo de Eventos
Introduccin
Adaptadores y clases Internas
Eventos Estandard
Eventos generados por componentes del AWT
Escribir un oyente de Action
Escribir un oyente de Adjustment
Escribir un oyente de Component
Escribir un oyente de Container
Escribir un oyente de Focus
Escribir un oyente de Item
Escribir un oyente de Key
Escribir un oyente de Ratn
Escribir un oyente de movimiento de Ratn
Escribir un oyente de Texto
Escribir un oyente de Ventanas
Utilizar la versin "Swing" del JFC
Introducin al Swing
Empezar con Swing
Ejecutar un Applet de Swing
Detalles de Componentes
Reglas Generales
La clase Button
La clase Checkbox
La clase Label
La clase RadioButton
La clase TabbedPane
La clase Table
La clase ToolTip
La clase Tree
Ozito
Tu Primera 'Taza' de Java
Las dos pginas siguientes proporcionan instrucciones detalladas para compilar y
ejecutar tu primer programa Java. Elige la seccin a la que pertenezca tu sistema
operativo
Tu primera 'Taza' en 9in:0
Estas instrucciones son para usuarios de plataformas Win32, que incluye
a Windows 95, Windows 98 y Windows NT.
Tu primera 'Taza' en /N&;
Estas instrucciones son para usuarios de plataformas basadas en UNIX,
incluyendo Linux y Solaris.
Tu primera 'Taza' en +)C
Estas instrucciones son para usuarios de plataformas basadas en MAC.
Ozito
Tu Primera Taza de Java en 9in:0
Instrucciones Detalladas
para Tu Primer Programa
Las siguientes instrucciones te ayudarn a escribir tu primer
programa Java. Estas instrucciones son para usuarios de
plataformas Win32, que incluye Windows 95, Windows 98 y
Windows NT.
1. Checklist 2. Crear tu Primera Aplicacin
a. Crear un Fichero Fuente Java
b. Compilar el Fichero Fuente
c. Ejecutar el Programa
3. Crear Tu Primer Applet 4. Dnde ir desde Aqu
67 C,ec<list
Para escribir tu primer programa, necesitars:
1. La Edicin Estndard de la Plataforma Java 2
TM
. Puedes descargarla
ahora y consultar las instrucciones de instalacin .
2. Un Editor de texto. En este ejemplo, usaremos el NotePad de Windows. Para
encontrar NotePad desde le men Inicio selecciona Programas > Accesorios >
NotePad. Si usas un editor diferente no te ser dificil adaptar estas
instrucciones.
Estas dos cosas son todo lo que necesitas para programar en Java.
07 Crear Tu Primera )plicaci2n
Tu primer programa, HelloWorldApp, simplemente
mostrar el saludo "Hello world!". Para crear este
programa, debers:
Crear un fichero fuente Java. Un fichero
fuente contiene texto, escrito en el lenguaje de
programacin Java, que tu y otros
programadores pueden entender. Se puede usar
cualquier editor de texto para crear y editar
ficheros fuente.
Compilar el fichero fuente en un fichero de
bytecodes. El compilador de Java, javac, toma
nuestro fichero fuente y lo traduce en
instrucciones que la Mquina Virtual Java (Java
VM) puede entender. El compilar pone estas
instrucciones en un fichero de bytecodes.
Por qu estn de moda los
Bytecodes
Habrs oido que con el lenguaje de
programacin Java, puedes "escribir
una vez, ejecutar en cualquier parte".
Esto significa que cuando se compila
un programa, no se generan
instrucciones para una plataforma
especfica. En su lugar, se generan
bytecodes Java, que son instrucciones
para la Mquina Virtual Java (Java
VM). Si tu plataforma- sea Windows,
UNIX, MacOS o un navegador de
internet-- tiene la Java VM, podr
entender los bytecodes.
Ejecutar le programa contenido en el
fichero de bytecodes. La mquina virtual Java
est implementada por un intrprete Java,
java. Este intrprete toma nuestro fichero de
bytecodes y lleva a cabo las instrucciones
traducindolas a instrucciones que nuestro
ordenador pude entender.
Subir
a7Crear un 3ic,ero 3uente Java7
Tienes dos opciones:
Puedes grabar el fichero [Link] en tu ordenador y
as evitarte todo el tecleo. Luego puedes ir directo al paso b.
O, puedes seguir ests (largas) instrucciones:
[Link] NotePad. En un nuevo documento, teclea el siguiente cdigo:
/**
* The HelloWorldApp class implements an application that
* simply displays "Hello World!" to the standard output.
*/
class HelloWorldApp {
public static void main(Strin!" ars# {
// $isplay "Hello World!"
[Link]("Hello World!"#%
&
&
Se cuidadoso cuando lo teclees
Teclea todo el cdigo, comandos y nombres de ficheros exactamente
como los ves. El compilador y el intrprete Java son sensibles a las
maysculas.
HelloWorldApp helloworldapp
2. Graba este cdigo en un fichero. Desde la barr de men, selecciona
File > Save As. En le caja de dilofoSave As:
Usa el men desplegable Save in, para especificar el directorio (o
carpeta) donde grabars el fichero. En este ejemplo, el es el
directorio java en la unidadC.
En la caja de texto File name, teclea, "[Link]",
incluyendo las comillas.
En el men desplegable Save as type, elige Text Document.
Cuando hayas terminado la caja de dilogo se debera parecer
a esto:
Ahora pulsa sobre Save, y sal de NotePad.
Subir
$7 Compilar el 3ic,ero 3uente
Desde el men Start, selecciona la aplicacin MS-DOS Prompt (Windows
95/98) o Command Prompt (Windows NT). Cuando se lanze, se debera
parecer a esto:
El prompt muestra tu directorio actual. Cuando salimos a una ventana
del DOS en Windows 95/98, el directorio actual normalmente es
WINDOWS en nuestra unidad C (como s eve arriba) o WINNT para
Windows NT. Para compilar el fichero fuente, cambiamos al directorio en
el que se encuentra el fichero. Por ejemplo, si nuestro directorio de
cdigo fuente es java en la unidad C, deberamos teclear el siguiente
comando y pulsar Enter:
cd c:\java
Ahora el prompt debera cambiar a C:\java>.
Nota: Para cambiar a un directorio en una unidad diferente,
deberemos teclear un comando extra.
Como se ve aqu, para cambiar al
directorio java en la unidad D,
debemos reentrar en la unidad d:
Si tecleas dir en la lnea de comandos, deberas ver tu fichero.
Ahora puedes compilar. En la lnea de comandos, teclea el siguiente
comando y pulsa Enter:
javac [Link]
Si el prompt reaparece sin mensajes de error, felicidades. Tu programa
se ha compilado con xito.
Explicacin de Error
Bad command or file name (Windows 95/98)
El nombre especificado no es reconocido como un comando interno o
externo, operable program or batch file (Windows NT)
Si recibes este error, Windows no puede encontrar el compilador Java, javac.
Aqu hay una forma de decirle a Windows dnode encontrar javac.
Supongamos que has intalado el SDK de Java 2 en C:\jdk1.2.2. En el prompt
deberas tecelar el siguiente comando y pulsar Enter:
'()*d+,.-.-)bin)*avac HelloWorldApp.*ava
Nota: Si eliges esta opcin, cada vez que compiles o ejecutes un programam
tendrs que preceder a tus comandos javac y java con C:\jdk1.2.2\bin\.
Para evitar esto consulta la seccin Update the PATH variable en las
instrucciones de instalacin.
El compilador ha generado un fichero de bytecodes Java,
[Link]. En el prompt, teclea dir para ver el nuevo
fichero que se ha generado:
Ahora que tienen un fichero .class, puedes ejecutar tu programa.
subir
c7E"ecutar el Pro!rama
En el mismo directorio teclea en el prompt:
java HelloWorldApp
Ahora deberas ver:
Felicidades!, tu programa funciona.
Explicacin de Error
Exception in thread "main" [Link]:
HelloWorldApp
Si recibes este error, java no puede encontrar tu fichero de bytecodes,
[Link].
Uno de los lugares donde java intenta buscar el fichero de bytecodes es el
directorio actual. Por eso, si tu fichero de bytecodes est en C:\java, deberas
cambiar a ese directorio como directorio actual.
Si todava tienes problemas, podras tener que cambiar tu variables
CLASSPATH. Para ver si es necesario, intenta seleccionar el casspath con el
siguiente comando:
set '.ASS/ATH0
Ahora introduce de nuevo java HelloWorldApp. Si el programa funciona,
tendrs que cambiar tu variable CLASSPATH. Para ms informacin, consulta
la seccin Check the CLASSPATH Variable en las instrucciones de
instalacin.
subir
:7Crear tu Primer )pplet
HelloWorldApp es un ejemplo de una aplicacin Java, un programa solitario.
Ahora crears un applet Java, llamado HelloWorld, que tambin muestra el
salido "Hello world!". Sin embargo, al contrario que HelloWorldApp, el applet se
ejecuta sobre un navegador compatible con Java, como HotJava, Netscape
Navigator, o Microsoft Internet Explorer.
Para crear este applet, debes realizar los mismos pasos bsicos que antes: crear
un fichero fuente Java; compilarlo y ejecutar el programa.
a7 Crear un 3ic,ero 3uente Java7
De nuevo, tienes dos opciones:
Puedes grabar los ficheros [Link] y [Link] en tu
ordenador y as evitarte todo el tecleo. Luego puedes ir directo al
paso b.
O, puedes seguir estas instrucciones:
[Link] NotePad y teclea el siguiente cdigo en un nuevo documento:
import *[Link].*%
import *ava.a1t.*%
/**
* The HelloWorld class implements an applet that
* simply displays "Hello World!".
*/
public class HelloWorld e2tends Applet {
public void paint(3raphics # {
// $isplay "Hello World!"
.dra1Strin("Hello 1orld!"4 564 -5#%
&
&
Graba este cdigo en un fichero llamado [Link].
2. Tambin necesitas un fichero HTML que acompae a tu applet. Teclea
el siguiente cdigo en nuevo documento del NotePad:
7HT8.9
7H:A$9
7T;T.:9A Simple /roram7/T;T.:9
7/H:A$9
7<=$>9
Here is the output o? my proram(
7A//.:T '=$:0"[Link]" W;$TH0,56 H:;3HT0-59
7/A//.:T9
7/<=$>9
7/HT8.9
Graba este cdigo en un fichero llamado [Link].
$7 Compilar el C2di!o 3uente7
En el prompt, teclea el siguiente comando y pulsa Return:
javac [Link]
El compilar debera generar el fichero de bytecodes Java,
[Link].
c7 E"ecutar el Pro!rama7
Aunque puedes ver tu applet usando un navegado, podras encontrar
ms sencillo probarlos usando la aplicacin appletviewer que viene con
la plataforma Java
TM
. Para ver el applet HelloWorld usando el
appletviewer, teclea esto en la lnea de comandos:
appletviewer [Link]
Ahora deberas ver:
Felicidades! tu applet funciona.
subir
=7 ) d2nde ir desde a>u?
Para continuar con la introduccin al lenguaje Java, puedes visitar estas secciones:
Por dnde Empezar
Conceptos Bsicos
Subir
Ozito
Primera Taza de Java en /N&;
Instrucciones Detalladas
para Tu Primer Programa
Las siguientes instrucciones te ayudarn a escribir tu primer
programa Java. Estas instrucciones son para usuarios de
plataformas basadas en UNIX, incluyendo Linux y Solaris
1. Checklist 2. Crear tu Primera Aplicacin
a. Crear un Fichero Fuente Java
b. Compilar el Fichero Fuente
c. Ejecutar el Programa
3. Crear Tu Primer Applet 4. Dnde ir desde Aqu
67 C,ec<list
Para escribir tu primer programa, necesitars:
1. La Edicin Estndard de la Plataforma Java 2
TM
. Puedes descargarla ahora
y consultar las instrucciones de instalacin .
2. Un Editor de texto. En este ejemplo, usaremos el Pico, un editor disponible en
muchas plataformas basadas en UNIX. Si usas un editor diferente, como VI o
Emacs, no te ser dificil adaptar estas instrucciones.
Estas dos cosas son todo lo que necesitas para programar en Java.
07 Crear Tu Primera )plicaci2n
Tu primer programa, HelloWorldApp, simplemente
mostrar el saludo "Hello world!". Para crear este
programa, debers:
Crear un fichero fuente Java. Un fichero
fuente contiene texto, escrito en el lenguaje de
programacin Java, que tu y otros
programadores pueden entender. Se puede usar
cualquier editor de texto para crear y editar
ficheros fuente.
Compilar el fichero fuente en un fichero de
bytecodes. El compilador de Java, javac, toma
nuestro fichero fuente y lo traduce en
instrucciones que la Mquina Virtual Java (Java
VM) puede entender. El compilar pone estas
instrucciones en un fichero de bytecodes.
Por qu estn de moda los
Bytecodes
Habrs oido que con el lenguaje de
programacin Java, puedes "escribir
una vez, ejecutar en cualquier parte".
Esto significa que cuando se compila
un programa, no se generan
instrucciones para una plataforma
especfica. En su lugar, se generan
bytecodes Java, que son instrucciones
para la Mquina Virtual Java (Java
VM). Si tu plataforma- sea Windows,
UNIX, MacOS o un navegador de
internet-- tiene la Java VM, podr
entender los bytecodes.
Ejecutar le programa contenido en el
fichero de bytecodes. La mquina virtual Java
est implementada por un intrprete Java,
java. Este intrprete toma nuestro fichero de
bytecodes y lleva a cabo las instrucciones
traducindolas a instrucciones que nuestro
ordenador pude entender.
Subir
a7Crear un 3ic,ero 3uente Java7
Tienes dos opciones:
Puedes grabar el fichero [Link] en tu ordenador y as
evitarte todo el tecleo. Luego puedes ir directo al paso b.
O, puedes seguir ests (largas) instrucciones:
[Link] una ventana shell (algunas veces llamada una ventana de terminal).
Cuando veas la ventana se parecer a esto
Cuando se muestra por primera vez el prompt, tu directorio actualar ser
normalmente tu directorio 'home'. Puedes cambiar tu directorio actual a tu
directorio home en cualquier momento tecleando cd y pulsando Return.
Los ficheros Java que crees deberan estar en un directorio separado. Puedes
crear un directorio usando el comando mkdir. Por ejemplo, para crear el
directorio java en tu diectorio home, primero debes cambiar tu directorio
actual a tu directorio home entrando el siguiente comando:
cd
Luego introducirs el siguiente comando:
mkdir java
Para cambiar tu directorio actual a este nuevo disrectorio, deberas teclear:
cd java
Ahora ya puedes empezar a crear tu fichero fuente.
2. Arranca el editor Pico tecleando
pico en elprompt y pulsando
Return. Si el sistema responde con
el mensaje pico: command not
found, es que Pico no est
disponible. Consulta a tu
administrador de sistemas para
ms informacin o usa otro editor.
Cuando se arraca Pico, se muestra
un nuevo buffer en blanco. Este es
el re en que el teclears tu
cdigo
Pico? VI? Emacs?
Pico es probablemente el ms
sencillo de los tres editores. Si
tienes curiosidad sobre el uso
de los otros editores puedes
visitar las siguientes pginas VI
y Emacs < .
3. Teclea el siguiente cdigo dentro del nuevo buffer:
/**
* The HelloWorldApp class implements an application that
* simply displays "Hello World!" to the standard output.
*/
class HelloWorldApp {
public static void main(Strin!" ars# {
// $isplay "Hello World!"
[Link]("Hello World!"#%
&
&
Se cuidadoso cuando lo teclees
Teclea todo el cdigo, comandos y nombres de ficheros exactamente
como los ves. El compilador y el intrprete Java son sensibles a las
maysculas.
HelloWorldApp helloworldapp
4. Graba el cdigo pulsando Ctrl-O. En la parte inferior vers el prompt File Name to
write:. Introduce [Link], precedido por el directorio en el que deseas
grabar el ficherp. Por ejemplo, si lo deseas grabar en el directorior
/home/rortigas/java, deberas teclear
/home/rortigas/java/[Link] y pulsar Return.
Puedes teclear Ctrl-X para salir de Pico. subir
$7 Compilar el 'ic,ero 3uente7
Trae otra ventana del shell. Para compilar el fichero fuente, cambiar tu
directorio actual al directorio en el que estaba el fichero fuente. Por ejemplo,
si tu directorio fuente es /home/rortigas/java, deberas teclear el
siguiente comando en el prompt y pulsar Return:
cd /home/rortigas/java
Si introduces pwd en el prompt deberas verl directorio actual, que en este
ejemplo ha sido cambiado a /home/rortigas/java.
Si introduces ls en el prompt deberas ver tu fichero.
Ahora puedes compilarlo. En el prompt, teclea el siguiente comando y pulsa
Return:
javac [Link]
Si tu prompt reaparece sin mensajes de error, Felicidades! tu programa se
ha compilado con xito.
Explicacin de Error
javac: Command not found
Si recibes este error, UNIX no puede encontrar el compilador Java, javac.
Aqu hay una forma de decirle a UNIX dnode encontrar javac. Supongamos
que has intalado el SDK de Java 2 en /usr/local/jdk1.2.2. En el prompt
deberas tecelar el siguiente comando y pulsar Enter:
/usr/local/*d+,.-.-)bin)*avac HelloWorldApp.*ava
Nota: Si eliges esta opcin, cada vez que compiles o ejecutes un programam
tendrs que preceder a tus comandos javac y java con
/usr/loacl/jdk1.2.2\bin\. Para evitar esto consulta la seccin Update the
PATH variable en las instrucciones de instalacin.
El compilador ha generado un fichero de bytecodes de Java,
[Link]. En el prompt, teclea ls para ver el nuevo fichero
generado
Ahora que tenemos un fichero .class, podemos ejecutar el programa.
Subir
c7E"ecutar el Pro!rama7
En el mismo directorio introducir en el prompt:
java HelloWorldApp
Ahora deberas ver:
Felicidades! tu programa funciona!.
Explicacin de Error
Exception in thread "main" [Link]:
HelloWorldApp
Si recibes este error, java no puede encontrar tu fichero de bytecodes,
[Link].
Uno de los lugares donde java intenta buscar el fichero de bytecodes es el
directorio actual. Por eso, si tu fichero de bytecodes est en
/home/rortigas/java, deberas cambiar a ese directorio como directorio
actual.
cd /home/rortias/*ava
Si todava tienes problemas, podras tener que cambiar tu variable
CLASSPATH. Para ver si es necesario, intenta seleccionar el casspath con el
siguiente comando:
unset '.ASS/ATH0
Ahora introduce de nuevo java HelloWorldApp. Si el programa funciona,
tendrs que cambiar tu variable CLASSPATH. Para ms informacin, consulta
la seccin Check the CLASSPATH Variable en las instrucciones de
instalacin.
Subir
:7Crear tu primer )pplet
HelloWorldApp es un ejemplo de una aplicacin Java, un programa solitario. Ahora
crears tu primer Applet Ajava llamado HelloWorld, que tambin muestra el saludo
"Hello world!". Sin embargo, al contrario que HelloWorldApp, el applet se ejecuta
sobre un navegador compatible con Java, como HotJava, Netscape Navigator, o
Microsoft Internet Explorer.
Para crear este applet, debes realizar los mismos pasos bsicos que antes: crear un
fichero fuente Java; compilarlo y ejecutar el programa.
a7 Crear un 3ic,ero 3uente Java7
De nuevo, tienes dos opciones:
Puedes grabar los ficheros [Link] y [Link] en tu
ordenador y as evitarte todo el tecleo. Luego puedes ir directo al paso
b.
O, puedes seguir estas instrucciones:
[Link] Pico, y teclear el siguiente cdigo dentro del buffer:
import *[Link].*%
import *ava.a1t.*%
/**
* The HelloWorld class implements an applet that
* simply displays "Hello World!".
*/
public class HelloWorld e2tends Applet {
public void paint(3raphics # {
// $isplay "Hello World!"
.dra1Strin("Hello 1orld!"4 564 -5#%
&
&
Graba este cdigo en un fichero llamado [Link]. Teclea Ctrl-X
para salir de Pico.
2. Tambin necesitas un fichero HTML que acompae al applet. Arranca Pico
de nuevo y tecela el siguiente cdigo en un nuevo buffer:
7HT8.9
7H:A$9
7T;T.:9A Simple /roram7/T;T.:9
7/H:A$9
7<=$>9
Here is the output o? my proram(
7A//.:T '=$:0"[Link]" W;$TH0,56 H:;3HT0-59
7/A//.:T9
7/<=$>9
7/HT8.9
Graba este cdigo en un fichero llamado [Link]. Teclea Ctrl-X
para salir de Pico.
$7 Compilar el 3ic,eor 3uente7
En el prompt, teclea el siguiente comando y pulsa Return:
javac [Link]
El compilar debera generar un fichero de bytecodes Java,
[Link].
c7 E"ecutar el Pro!rama7
Aunque puedes ver tu applet usando un navegado, podras
encontrar ms sencillo probarlos usando la aplicacin
appletviewer que viene con la plataforma Java
TM
. Para ver el
applet HelloWorld usando el appletviewer, teclea esto en la
lnea de comandos:
appletviewer [Link]
Ahora deberas ver:
Felicidades! tu applet Funciona!
subir
=7 ) d2nde ir desde a>u?
Para continuar con la introduccin al lenguaje Java, puedes visitar estas secciones:
Por dnde Empezar
Conceptos Bsicos
Subir
Ozito
Tu Primera Taza de Java en +ac#(
Instrucciones Detalladas
para Tu Primer Programa
Las siguientes instrucciones te ayudarn a escribir tu primer
programa Java. Estas instrucciones son para usuarios de la
plataforma MacOS.
1. Checklist 2. Crear tu Primera Aplicacin
a. Crear un Fichero Fuente Java
b. Compilar el Fichero Fuente
c. Ejecutar el Programa
3. Crear Tu Primer Applet 4. Dnde ir desde Aqu
67 C,ec<list
1. Un Entorno de Desarrollo para la Plataforma Java. Puedes descargar el MRJ SDK
(Macintosh Runtime Environment for Java Software Development Kit) desde la
website de Apple.
2. Un entorno de ejecucin para la misma versin de la plataforma Java. Puedes
descargar el MRJ (Macintosh Runtime Enviroment for Java) desde la website de
Apple.
3. Un Editor de texto. En este ejemplo, usaremos SimpleText, el sencillo editor
incluido con las plataformas Mac OS. Si usas un editor diferente no te ser dificil
adaptar estas instrucciones.
Estas tres cosas son todo lo que necesitas para programar en Java.
07 Crear Tu Primera )plicaci2n
Tu primer programa, HelloWorldApp, simplemente
mostrar el saludo "Hello world!". Para crear este
programa, debers:
Crear un fichero fuente Java. Un fichero
fuente contiene texto, escrito en el lenguaje de
programacin Java, que tu y otros
programadores pueden entender. Se puede usar
cualquier editor de texto para crear y editar
ficheros fuente.
Compilar el fichero fuente en un fichero de
bytecodes. El compilador de Java, javac, toma
nuestro fichero fuente y lo traduce en
instrucciones que la Mquina Virtual Java (Java
VM) puede entender. El compilar pone estas
Por qu estn de moda los
Bytecodes
Habrs oido que con el lenguaje de
programacin Java, puedes "escribir
una vez, ejecutar en cualquier parte".
Esto significa que cuando se compila
un programa, no se generan
instrucciones para una plataforma
especfica. En su lugar, se generan
bytecodes Java, que son instrucciones
para la Mquina Virtual Java (Java
VM). Si tu plataforma- sea Windows,
UNIX, MacOS o un navegador de
internet-- tiene la Java VM, podr
instrucciones en un fichero de bytecodes.
Ejecutar le programa contenido en el
fichero de bytecodes. La mquina virtual Java
est implementada por un intrprete Java,
java. Este intrprete toma nuestro fichero de
bytecodes y lleva a cabo las instrucciones
traducindolas a instrucciones que nuestro
ordenador pude entender.
entender los bytecodes.
Subir
a7Crear un 3ic,ero 3uente Java7
Tienes dos opciones:
Puedes grabar el fichero [Link] en tu ordenador y as
evitarte todo el tecleo. Luego puedes ir directo al paso b.
O, puedes seguir ests (largas) instrucciones:
[Link] SimpleText. En un nuevo documento, teclea el siguiente cdigo:
/**
* The HelloWorldApp class implements an application that
* simply displays "Hello World!" to the standard output.
*/
class HelloWorldApp {
public static void main(Strin!" ars# {
// $isplay "Hello World!"
[Link]("Hello World!"#%
&
&
Se cuidadoso cuando lo teclees
Teclea todo el cdigo, comandos y nombres de ficheros exactamente
como los ves. El compilador y el intrprete Java son sensibles a las
maysculas.
HelloWorldApp helloworldapp
2. Graba este cdigo en un fichero. Desde la barr de men, selecciona File >
Save As. En la caja de dilogoSave As:
Especificar la carpeta donde grabars el fichero. En este ejemplo, el es la
carpeta MRJ SDK 2.1.
En la caja de texto Save This Document as:, teclea,
"[Link]"
Cuando hayas terminado la caja de dilogo se debera parecer a esto:
Ahora pulsa sobre Save, y sal de SimpleText.
Subir
$7 Compilar el 3ic,ero 3uente
Ve a la carpeta MRJ SDK 2.1 y all deberas ver algo como esto:
Habr una carpeta llamada Tools. En esta carpeta hay una carpeta llamada
MRJTools.
Abrela. Vers un programa llamado javac.
Ahora arrastra nuestro [Link] sobre esta aplicacin Javac. Se
abrira javac y deberas ver:
En la caja Source Files nos ofrece el path absoluto que acabamos de crear. Por
ahora no tenemos que hacer nada ms excexto pulsr el botn Do Javac.
Si no aparecen mensajes de error, felicidades. Tu programa se ha compilado con
xito.
Explicacin de Error
Si arrastras nuestro fichero .java sobre el programa javac y el fichero
se muda sobre la apIicacin javac
Cuando se intenta esto y lo nico que sucede es que nuestro fichero .java se
copia o se mueve encima de nuestra aplicacin javac, tenemos reconstruir
nuestro escritorio.
Para hacer esto tenemos que volver a arrancar el ordenador y pulsar y
mantener las teclas "Apple" - y "Alt" hasta que obtengamos una ventana
preguntndonos si queremos reconstruir nuestro escritorio.
Respondemos que s. Cuando el ordenador haya finalizado debemos poder
arrastrar nuestro fichero .java sobre la aplicacin javac.
El compilador ha generado un fichero de bytecodes Java,
[Link]. Mira en la misma carpeta en la que grabaste el fichero
.java y vers el fichero .class:
Ahora que tenemos un fichero .class, puedes ejecutar tu programa.
subir
c7E"ecutar el Pro!rama
En la carpeta MRJ SDK 2.1 hay otra carpeta llamada JBindery. Abrela y debera
hacer una aplicacin llamada JBindery
Arrastra el fichero [Link] sobre el icono JBindery.
Si obtienes esto:
Felicidades!, tu programa funciona.
subir
:7Crear tu Primer )pplet
HelloWorldApp es un ejemplo de una aplicacin Java, un programa solitario. Ahora
crears un applet Java, llamado HelloWorld, que tambin muestra el salido "Hello
world!". Sin embargo, al contrario que HelloWorldApp, el applet se ejecuta sobre un
navegador compatible con Java, como HotJava, Netscape Navigator, o Microsoft Internet
Explorer.
Para crear este applet, debes realizar los mismos pasos bsicos que antes: crear un
fichero fuente Java; compilarlo y ejecutar el programa.
a7 Crear un 3ic,ero 3uente Java7
De nuevo, tienes dos opciones:
Puedes grabar los ficheros [Link] y [Link] en tu ordenador
y as evitarte todo el tecleo. Luego puedes ir directo al paso b.
O, puedes seguir estas instrucciones:
[Link] SimpleText y teclea el siguiente cdigo en un nuevo documento:
import *[Link].*%
import *ava.a1t.*%
/**
* The HelloWorld class implements an applet that
* simply displays "Hello World!".
*/
public class HelloWorld e2tends Applet {
public void paint(3raphics # {
// $isplay "Hello World!"
.dra1Strin("Hello 1orld!"4 564 -5#%
&
&
Graba este cdigo en un fichero llamado [Link].
2. Tambin necesitas un fichero HTML que acompae a tu applet. Teclea el
siguiente cdigo en nuevo documento del SimpleText:
7HT8.9
7H:A$9
7T;T.:9A Simple /roram7/T;T.:9
7/H:A$9
7<=$>9
Here is the output o? my proram(
7A//.:T '=$:0"[Link]" W;$TH0,56 H:;3HT0-59
7/A//.:T9
7/<=$>9
7/HT8.9
Graba este cdigo en un fichero llamado [Link].
$7 Compilar el C2di!o 3uente7
Compila el fichero fuente [Link] usando javac.
El compilador debera generar el fichero de bytecodes Java, [Link].
c7 E"ecutar el Pro!rama7
Aunque puedes ver tu applet usando un navegado, podras encontrar ms
sencillo probarlos usando la aplicacin appletrunner que viene con la
plataforma Java
TM
. Para ver el applet HelloWorld usando el applet runner,
abre la carpeta Apple applet viewer en la carpete MRJ SDK 2.1. Debera haber
una aplicacin llamada Apple Applet Runner.
Arrastra nuestro fichero [Link] sobre esta aplicacin.
Ahora deberas ver:
Felicidades! Tu Applet funciona.
subir
=7 ) d2nde ir desde a>u?
Para continuar con la introduccin al lenguaje Java, puedes visitar estas secciones:
Por dnde Empezar
Conceptos Bsicos
Subir
Ozito
Por 12nde Empezar?
Bien, si ests interesado en este potente lenguaje y no sabes nada de l te
recomiendo que te des una vuelta por la site de sus creadores:
[Link]
En esta otra direccin podrs bajarte la ltima versin del JDK:
[Link]
Dentro del JDK encontrars varias aplicaciones que te ayudarn en el trabajo con
Java, por ejemplo:
javac El compilador Java por excelencia, un compilador de lnea de
comandos, que te permitir crear tus programas y applets en Java.
appletviewer Un visualizador de Applets para no tener que cargarlos en un
navegador.
java El intrprete que te permitir ejecutar tus aplicaciones creadas en Java.
javap Un descompilador que te permite ver el contenido de las clases
compiladas.
Pero si no te interesa el trabajo puro y duro con Java, puedes bajarte cualquiera de
los entornos integrados de desarrollo de Java, como el Visual J++ de Microsoft en
[Link] o el Wrokshop de Sun en
[Link] .
Ozito
"avac ? El compilador de Java
(nta8is de utilizaci2n
*avac !opciones" ?ichero.*ava ...
*avac@ ! opciones" ?ichero.*ava ...
1escripci2n
El comando javac compila el cdigo fuente Java y lo convierte en
Bytecodes. Despus se puede utilizar el intrprete Java - java - o el
navegador en caso de los applets para interpretar esos Bytecodes Java.
El cdigo fuente de Java debe estar contenido en ficheros con extensin
'.java'. Para cada clase definida en el fichero fuente pasado a javac, el
compilador almacena los bytecodes resultantes en un fichero llamado
[Link]. El compilador sita estos ficheros en el mismo
directorio en el que estaba el fichero fuente (a menos que se especifique
la opcin -d).
Cuando definas tus propias clases necesitars especificar su localizacin.
Utiliza CLASSPATH para hacer esto. CLASSPATH consiste en una lista de
directorios separados por puntos y comas que especifican el path. Si el
fichero fuente pasado a javac hace referencia a otra clase que no est
definida en otros ficheros pasados a javac, el compilador busca las
clases referenciadas utilizando CLASSPATH. Por ejemplo:
.;C:/users/java/clases
Observa que el sistema siempre aade la localizacin de las clases del
sistema al final del CLASSPATH a menos que se utilice la opcin
-classpath para especificar un path.
javac_g es una versin no optimizada de javac especialmente
preparada para utilizar con depuradores como jdb.
#pciones
-classpath path
Especifica el path que javac utilizar para buscar las clases.
Sobreescribe el path por defecto generado por la variable de
entorno CLASSPATH. Los directorios estn separados por puntos y
comas. Por ejemplo:
.;C:/users/java/clases;C:\tools\java\clases
-d directorio
Especifica el directorio raiz para el rbol de clases. Hacer esto:
javac -d <mi_dir> [Link]
hace que los ficheros '.class' del fichero fuente '[Link]'
sean guardados en el directorio 'mi_dir'.
-g
Habilita la generacin de tablas de depurado. Esta tablas contienen
informacin sobre los nmeros de lneas y las variables locales -
informacin utilizada por las herramientas de depurado de Java. Por
defecto, slo genera nmeros de lneas a menos que se active la
optimizacin (-O).
-nowarn
Desactiva los avisos. Si se utiliza el compilador no imprime ningn
aviso.
-O
Optimiza el cdigo compillado introduciendo en lnea los mtodos
finales y privados. Observa que esto puede hacer que el tamao de
tus clases crezca demasiado.
-verbose
Hace que el compilador y el enlazador impriman los mensajes sobre
los ficheros fuentes que estn siendo compilados y que ficheros
.class estn siendo cargados.
Ozito
appletvie@er ? El visualizador de )pplets
Este comando te permite ejecutar applets fuera del contexto de los navegadores de
la WWW.
(nta8is
appletviewer [ opciones ] urls ...
1escripci2n
El comando appletviewer conecta los documentos o recursos
designados por urls y muestra cada applet referenciado en su propia
ventana.
Nota: si los documentos referenciados con las urls no contienen ningn
applet con la etiqueta APPLET, appletviewer no hace nada.
#pciones
-debug
Arranca el visualizador dentro del depurador de Java, el jdb,
permitindote depurar los applets en el documento
Ozito
"ava ? El int4rprete Java
(ntasis de /tilizaci2n
java [ opciones ] nombredeclase <argumentos>
java_g [ opciones ] nombredeclase <argumentos>
1escripci2n
El comando java ejecuta los bytecodes Java creados por el compilador
javac.
El argumento nobrede!lase es el nombre de la clase que se va a
ejecutar. Debe estar totalmente cualificado e incluir su nombre de
paquete en el nombre, por ejemplo:
java [Link]
Observa que todos los argumentos que aparecen despus de
nobrede!lase en la lnea de comandos son pasados al mtodo main()
de la clase.
java espera que los bytecodes de la clase se encuentren en un fichero
llamado nobrede!lase"!lass que ha sido generado al compilar el fichero
fuente correspondiente con javac. Todos los ficheros de bytecodes java
tienen la extensin "!lass que aada automticamente el compilador
cuando la clase es compilada. La clase debe contener un mtodo main()
definido de la siguiente forma:
class Unaclase {
public static void main( String argv []) {
...
}
}
java ejecuta el mtodo main y luego sale a menos que ste cree uno o
ms threads. Si el mtodo main() crea algn thread, java no sale hasta
que haya terminado el ltimo thread.
Normalmente, compilar tus ficheros fuente con javac y luego ejecutas
los programas con java. Sin embargo, se puede utilizar java para
compilar y ejecutar los programas cuando se utiliza la opcin -cs.
Cuando se carga una clase se compara su fecha de ltima modificacin
con la fecha del fichero fuente. Si el fuente ha sido modificado, se
recompila y se carga el nuevo fichero de bytecodes. java repite este
procedimiento hasta que todas las clases se han compilado y cargado
correctamente.
El intrprete puede determinar su una es legtima a travs de un
mecanismo de verififacin. Esta verificacin asegura que los bytecodes
que estn siendo interpretados no violan las restricciones del lenguaje.
java_g es una versin no optimizada de java pensada para ser utilizada
con depuradores como el jdb.
#pciones
-debug
Permite que el depurador de Java jdb se aada a esta sesn java.
Cuando se especifica esta opcin en la lnea de comandos, java
muestra una password que se debe utilizar cuando empiece la
sesin de depurado.
-cs, -checksource
Cuando se carga una clase compilada, esta opcin hace que la fecha
de modificacin de los bytecodes sea comparada con la del fichero
fuente. Si el fichero fuente ha sido modificado recientemente, es
recompilado y se cargan los nuevos bytecodes.
-classpath path
Especifica el path que utilizar java para buscar las clases.
Sobreescribe el valor por defecto de la variable de etorno
CLASSPATH. Los directorios ests separados por comas.
-mx x
Selecciona el mximo tamao de memoria reservada para la pila
del recolector de basura a #. El valor por defecto es 16 megabytes
de memoria. # debe ser mayor de 1000 bytes
Por defecto, # se mide en bytes. Pero puedes especifarlo en kb o Mb
aadindole la letra 'k' para kilobytes o 'm' para megabytes.
-ms x
Selecciona el tamao inicial de la memoria reservada para la pila
del recolector de basura a #. El valor por defecto es 16 megabytes
de memoria. # debe ser mayor de 1000 bytes
Por defecto, # se mide en bytes. Pero puedes especifarlo en kb o Mb
aadindole la letra 'k' para kilobytes o 'm' para megabytes.
-noasyncgc
Desactiva la recoleccin de basura asncrona. Cuando se activa la
recoleccin de basura no tiene lugar a menos que la llame
explcitamente o el programa sale de la memoria. Normalmente, la
recoleccin de basura se ejecuta en un thread asncrono en paralelo
con otros threads.
-ss x
Cada thread Java tiene dos pilas: una para el cdigo Java y otra
para el cdigo C. La opcin $ss selecciona el tamao mximo de la
pila que puede ser utilizada por el cdigo C en un thread a #" %ada
uno de los theads e&e!utados dentro del 'ro(raa que se 'aso a
java tiene # como su tamao de pila C. El valor por defecto es 128
kilobytes de memoria. # debe ser mayor de 1000 bytes
Por defecto, # se mide en bytes. Pero puedes especifarlo en kb o Mb
aadindole la letra 'k' para kilobytes o 'm' para megabytes.
-oss x
Cada thread Java tiene dos pilas: una para el cdigo Java y otra
para el cdigo C. La opcin $oss selecciona el tamao mximo de la
pila que puede ser utilizada por el cdigo Java en un thread a #"
%ada uno de los theads e&e!utados dentro del 'ro(raa que se
'aso a java tiene # como su tamao de pila Java. El valor por
defecto es 400 kilobytes de memoria. # debe ser mayor de 1000
bytes
Por defecto, # se mide en bytes. Pero puedes especifarlo en kb o Mb
aadindole la letra 'k' para kilobytes o 'm' para megabytes.
-t
Imprime un rastro de las instrucciones ejecutadas (slo en
java_g).
-v, -verbose
Hace que java en el canal stdout cada vez que se cara un fichero
class.
verify
Ejecuta el verificador en todo el cdigo.
-verifyremote
Ejecuta el verificador para todo el cdigo que es carga dentro del
sistema a travs de classloader. verif)reote es el valor por defecto
para el intrprete.
-noverify
Desactiva al verificacin.
-verbosegc
Hace que el recolector de basura impima mensajes cada vez que
libere memoria.
-DnombrePropiedad=nuevoValor
Redefine un valor de una propiedad. nobre*ro'iedad es el nombre
de la propiedad cuyo valor se quiere cambiar y nuevoValor es el
valor a cambiar. Por ejemplo, esta lnea de comando:
java -[Link]=green ...
selecciona el color de la propiedad awt"button"!olor a verde. java
acepta cualquier nmero de opciones $+ en la lnea de comandos.
Ozito
"avap ? El descompilador de 3ic,eros de Clases
Java
Desensambla los ficheros class.
(nta8is de /tilizaci2n
javap [ opciones ] clase ...
1escripci2n
El comando javap desensambla un fichero class. Su salida depende de
las opciones utilizadas. Si no se utilizan opciones, javap imprime los
campos y los mtodos pblicos de la clase pasada. javap muestra la
salida en stdout. Por ejemplo, la siguiente declaracin de clase:
class C {
static int a= 1;
static int b= 2;
static {
}
static {
}
static {
}
[Link](a);
a++;
b = 7;
[Link](a);
[Link](b);
[Link] println(b);
public static void main(String args[]) {
C c = new C();
}
}
Cuando el resultado de la clase C, sea pasado a javap sin utilizar
opciones, resultar la siguiente salida:
Compiled from C:\users\clases\[Link]
private class C extends java\lang\Object {
static int a;
static int b;
public static void main(java\lang\String[]);
public C();
static void();
13 getstatic #7
16 iconst_1
17 iadd
18 putstatic #7
21 bipush 7
23 putstatic #5
}
#pciones
-l
Imprime una tabla de lnea y variables locales.
-p
Imprime tambin los miembros y mtodo privados y protegidos de
la clase, adems de los miembros pblicos.
-c
Imprime el cdigo desensamblado, es decir, las intrucciones que
comprenden los bytecodes Java, para cada uno de los mtodos de
la clase. Por ejemplo, si se pasa la clase C a javap utilizando $! el
resultado sera la siguiente salida:
Compiled from C:\users\clases\[Link]
private class C extends java\lang\Object {
static int a;
static int b;
public static void main(java\lang\String[]);
public C();
static void();
Method void main(java\lang\String [])
0 new #4
3 invokenonvirtual # 9 () V>
6 return
Method C()
0 aload_0 0
1 invokenonvirtual #10 ()V>
4 return
Method void()
0 iconst_1
1 putstatic #7
4 getstatic #6
7 getstatic #7
10 invokevirtual #8
26 getstatic #6
29 getstatic #7
32 invokevirtual #8
35 getstatic #6
38 getstatic #5
41 invokevirtual #8
44 iconst_2
45 putstatic #5
48 getstatic #6
51 getstatic #5
54 invokevirtual #8
57 return
}
-classpath path
Especifica el path que javap utilizar para buscar las clases.
Sobreescribe el valor de la variable de entorno CLASSPATH. Los
directorios deben ests separados por puntos y comas.
Ozito
Conceptos Bsicos de Pro!ramaci2n #rientada a
#$"etos
Au4 son los o$"etos?
En informtica, un OBJETO es un conjunto de variables y de los mtodos
relacionados con esas variables.
Un poco ms sencillo: un objeto contiene en s mismo la informacin y los mtodos
o funciones necesarios para manipular esa informacin.
Lo ms importante de los objetos es que permiten tener un control total sobre
'quin' o 'qu' puede acceder a sus miembros, es decir, los objetos pueden tener
miembros pblicos a los que podrn acceder otros objetos o miembros privados a
los que slo puede acceder l. Estos miembros pueden ser tanto variables como
funciones.
El gran beneficio de todo esto es la encapsulacin, el cdigo fuente de un objeto
puede escribirse y mantenerse de forma independiente a los otros objetos
contenidos en la aplicacin.
Au4 son las clases?
Una CLASE es un proyecto, o prototipo, que define las variables y los mtodos
comunes a un cierto tipo de objetos.
Un poco ms sencillo: las clases son las matrices de las que luego se pueden crear
mltiples objetos del mismo tipo. La clase define las variables y los mtodos
comunes a los objetos de ese tipo, pero luego, cada objeto tendr sus propios
valores y compartirn las mismas funciones.
Primero deberemos crear una clase antes de poder crear objetos o ejemplares de
esa clase.
Au4 son los mensa"es?
Para poder crear una aplicacin necesitars ms de un objeto, y estos objetos no
pueden estar aislados unos de otros, pues bien, para comunicarse esos objetos se
envan mensajes.
Los mensajes son simples llamadas a las funciones o mtodos del objeto con el se
quiere comunicar para decirle que haga cualquier cosa.
Au4 es la ,erencia?
Qu significa esto la herencia, quen hereda qu; bueno tranquilo, esto slo
significa que puedes crear una clase partiendo de otra que ya exista.
Es decir, puedes crear una clase a travs de una clase existente, y esta clase
tendr todas las variables y los mtodos de su 'superclase', y adems se le podrn
aadir otras variables y mtodos propios.
Se llama 'Superclase' a la clase de la que desciende una clase, puedes ver ms
sobre la declaracin de clases en la pgina Declarar Clases.
Ozito
Baria$les C Tipos de 1atos
Las variables son las partes importantes de un lenguaje