You are on page 1of 77

Captulo 1

Introduccin a las computadoras,


los programas y Java

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
1
Objetivos
Comprender los conceptos bsicos de la computadora, los programas y los
sistemas operativos (1.2-1.4).
Describir la relacin entre Java y la World Wide Web (1.5).
Entender el significado de la especificacin de lenguaje Java, API, JDK e IDE
(1.6).
Escribir un programa Java simple (1.7).
Mostrar la salida en la consola (1.7).
Explicar la sintaxis bsica de un programa Java (1.7).
Crear, compilar y ejecutar programas Java (1.8).
Utilizar correctamente el estilo de programacin Java y los programas de
documentos (1.9).
Explicar las diferencias entre errores de sintaxis, errores de ejecucin y errores
lgicos (1.10).
Desarrollar programas Java usando NetBeans (1.11).
Desarrollar programas Java usando Eclipse (1.12).
Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
2
Qu es un equipo informtico?
Un equipo consta de una CPU, memoria, disco duro, disquete,
monitor, impresora y dispositivos de comunicacin.

Bus

Storage Communication Input Output


Memory CPU Devices Devices Devices
Devices
e.g., Disk, CD, e.g., Modem, e.g., Keyboard, e.g., Monitor,
and Tape and NIC Mouse Printer

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
3
CPU
La unidad central de procesamiento (CPU) es el cerebro de un
ordenador. Recupera las instrucciones de la memoria y las ejecuta.
La velocidad de la CPU se mide en megahercios (MHz), 1
megaherzio es igual a 1 milln de pulsos por segundo.
La velocidad de la CPU mejora continuamente.

B
us

S
to
rage C
omm
unic
atio
n I
np u
t O
utput
M
emo
ry C
PU De
vice
s D
evic
es D
evic
es
D
evic
es
e
.g
.,D
is
k,CD, e
.g
.,Modem, e
.g
.,K
ey
boa
rd, e
.g
.,M on
ito
r,
andTa
pe andNI
C M
ou
se Pr
inte
r

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
4
Memoria
La memoria almacena los datos y las instrucciones del programa
para que la CPU ejecute. Una unidad de memoria es una secuencia
ordenada de bytes, cada una contiene ocho bits. Un programa y sus
datos deben ser llevados a la memoria antes de que puedan ser
ejecutados. Un byte de memoria nunca est vaco, pero su contenido
inicial puede no tener sentido para su programa. El contenido actual
de un byte de memoria se pierde cuando se coloca nueva
informacin en l.
B
us

S
to
rage C
omm
unic
atio
n I
np u
t O
utput
M
emo
ry C
PU De
vice
s D
evic
es D
evic
es
D
evic
es
e
.g
.,D
is
k,CD, e
.g
.,Modem, e
.g
.,K
ey
boa
rd, e
.g
.,M on
ito
r,
andTa
pe andNI
C M
ou
se Pr
inte
r

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
5
Cmo se almacenan los datos?
Los datos de varios tipos, como nmeros,
caracteres y cadenas, se codifican como una serie
de bits (ceros y unos). Los ordenadores utilizan
ceros y unos porque los dispositivos digitales
Memory address Memory content
tienen dos estados estables, a los que se hace
referencia como cero y uno por convencin. Los . .
programadores no necesitan preocuparse por la . .
codificacin y decodificacin de los datos, que es . .
realizada automticamente por el sistema basado 2000 01001010 Encoding for character J
en el esquema de codificacin. El esquema de 2001 01100001 Encoding for character a
2002 01110110 Encoding for character v
codificacin vara. Por ejemplo, el carcter 'J' est 2003 01100001 Encoding for character a
representado por 01001010 en un byte. Un nmero 2004 00000011 Encoding for number 3
pequeo, como tres, se puede almacenar en un solo
byte. Si la computadora necesita almacenar un
nmero grande que no puede caber en un solo byte,
utiliza un nmero de bytes adyacentes. Dos datos
no pueden compartir o dividir un mismo byte. Un
byte es la unidad de almacenamiento mnima.

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
6
Dispositivos de almacenamiento
La memoria es voltil, porque la informacin se pierde cuando la
alimentacin se apaga. Los programas y los datos se almacenan
permanentemente en los dispositivos de almacenamiento y se
mueven a la memoria cuando el equipo los utiliza realmente. Existen
tres tipos principales de dispositivos de almacenamiento: unidades
de disco (discos duros y disquetes), unidades de CD (CD-R y CD-
RW) y unidades extrables.
B
us

S
to
rage C
omm
unic
atio
n I
np u
t O
utput
M
emo
ry C
PU De
vice
s D
evic
es D
evic
es
D
evic
es
e
.g
.,D
is
k,CD, e
.g
.,Modem, e
.g
.,K
ey
boa
rd, e
.g
.,M on
ito
r,
andTa
pe andNI
C M
ou
se Pr
inte
r

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
7
Dispositivos de salida: Monitor
El monitor muestra informacin (texto y grficos). La resolucin y el
nmero de puntos determinan la calidad de la pantalla.

B
us

S
to
rage C
omm
unic
atio
n I
np u
t O
utput
M
emo
ry C
PU De
vice
s D
evic
es D
evic
es
D
evic
es
e
.g
.,D
is
k,CD, e
.g
.,Modem, e
.g
.,K
ey
boa
rd, e
.g
.,M on
ito
r,
andTa
pe andNI
C M
ou
se Pr
inte
r

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
8
Resolucin del Monitor y Punto de Punto
resolucin La resolucin de pantalla especifica el nmero de pxeles en
las dimensiones horizontal y vertical del dispositivo de
visualizacin. Los pxeles (abreviatura de "elementos de
imagen") son pequeos puntos que forman una imagen en la
pantalla. Una resolucin comn para una pantalla de 17
pulgadas, por ejemplo, es de 1.024 pxeles de ancho y 768
pxeles de alto. La resolucin se puede configurar
manualmente. Cuanto mayor sea la resolucin, ms ntida y
clara ser la imagen.

Punto a Indica la cantidad de espacio entre pxeles, medida en


punto milmetros. Cuanto ms pequeo sea el punto, ms ntida
ser la pantalla.

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
9
Dispositivos de comunicacin
Un mdem normal utiliza una lnea telefnica y puede transferir datos en
una velocidad de hasta 56.000 bps (bits por segundo). Una DSL (lnea de
abonado digital) tambin utiliza una lnea telefnica y puede transferir
datos en una velocidad 20 veces ms rpida que un mdem normal. Un
mdem por cable utiliza la lnea de cable de TV mantenida por la
compaa de cable. Un mdem por cable es tan rpido como un DSL. La
tarjeta de interfaz de red (NIC) es un dispositivo para conectar una
computadora a una red de rea local (LAN). La LAN es comnmente
utilizada en negocios, universidades y organizaciones gubernamentales. Un
tipo tpico de NIC, llamado 10BaseT, puede transferir datos a 10 mbps
(millones de bits por segundo).
B
us

S
to
rage C
omm
unic
atio
n I
np u
t O
utput
M
emo
ry C
PU De
vice
s D
evic
es D
evic
es
D
evic
es
e
.g
.,D
is
k,CD, e
.g
.,Modem, e
.g
.,K
ey
boa
rd, e
.g
.,M on
ito
r,
andTa
pe andNI
C M
ou
se Pr
inte
r
Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
10
Programas
Los programas informticos, conocidos como software, son
instrucciones para el ordenador.

Podemos decirle a una computadora qu hacer a travs de


los programas. Sin programas, una computadora es una
mquina vaca. Los ordenadores no entienden los lenguajes
humanos, por lo que necesitamos utilizar los lenguajes de
la computadora para comunicarnos con ellos.

Los programas se escriben utilizando lenguajes de


programacin.
Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
11
Lenguajes de programacin
Lenguaje Mquina Lenguaje Ensamblador Lenguaje de Alto-Nivel

El lenguaje de mquina es un conjunto de instrucciones


primitivas incorporadas en cada computadora. Las
instrucciones estn en forma de cdigo binario, por lo que
tiene que introducir cdigos binarios para varias
instrucciones. Un programa en lenguaje de mquina nativo
es un proceso tedioso. Adems, los programas son muy
difciles de leer y modificar. Por ejemplo, para agregar dos
nmeros, puede escribir una instruccin en binario de la
siguiente manera:
1101101010011010

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
12
Lenguajes de programacin
Lenguaje Mquina Lenguaje Ensamblador Lenguaje de Alto-Nivel
Se desarrollaron lenguajes ensamblador para facilitar la
programacin. Dado que la computadora no puede entender el
lenguaje ensamblador, sin embargo, un programa llamado
ensamblador se utiliza para convertir programas de lenguaje
ensamblador en cdigo de mquina. Por ejemplo, para agregar
dos nmeros, puede escribir una instruccin en cdigo
ensamblador de la siguiente manera: ADDF3 R1, R2, R3

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
13
Lenguajes de programacin
Lenguaje Mquina Lenguaje Ensamblador Lenguaje de Alto-Nivel

Los lenguajes de alto nivel son normalmente en ingles y


fciles de aprender y programar. Por ejemplo, la siguiente
es una instruccin de lenguaje de alto nivel que calcula el
rea de un crculo con radio 5:
area = 5 * 5 * 3.1415;

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
14
Lenguajes de Alto Nivel mas conocidos
Language Description

Ada Llamado como Ada Lovelace, la primera programadora de la historia. El lenguaje Ada fue
desarrollado para el Departamento de Defensa y se utiliza principalmente en proyectos de defensa.
BASIC Beginners All-purpose Symbolic Instruction Code Fue diseado para ser aprendido y utilizado
fcilmente por los principiantes.
C Desarrollado en los Laboratorios Bell. C combina la potencia de un lenguaje ensamblador con la
facilidad de uso y la portabilidad de un lenguaje de alto nivel.
C++ C++ es un lenguaje orientado a objetos, basado en C.
C# Se pronuncia C Sharp. Es un hbrido de Java y C ++ y fue desarrollado por Microsoft.
COBOL COmmon Business Oriented Language. Se utiliza para aplicaciones empresariales.
FORTRAN FORmula TRANslation. Muy utilizado para aplicaciones cientficas y matemticas.
Java Desarrollado por Sun Microsystems, ahora parte de Oracle. Es ampliamente utilizado para
desarrollar aplicaciones de Internet independientes de la plataforma.
Pascal Es un lenguaje simple, estructurado, de uso general, principalmente para la enseanza de la
programacin.
Python Un lenguaje de scripting, de uso general bueno para escribir programas cortos.
Visual Fue desarrollado por Microsoft y permite a los programadores desarrollar rpidamente interfaces
Basic grficas de usuario.

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
15
Interpretacin / Compilacin de cdigo fuente

Un programa escrito en un lenguaje de alto nivel se llama


un programa fuente o cdigo fuente.
Debido a que un equipo no puede entender un programa
fuente, un programa fuente debe traducirse en cdigo de
mquina para su ejecucin.
La traduccin puede hacerse utilizando otra herramienta de
programacin llamada intrprete o compilador.

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
16
Interpretacin de cdigo fuente
Un intrprete lee una instruccin del cdigo fuente, la
traduce al cdigo mquina o al cdigo de la mquina
virtual y luego lo ejecuta de inmediato, como se muestra en
la siguiente figura.
Tenga en cuenta que una instruccin del cdigo fuente
puede traducirse a varias instrucciones de la mquina.

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
17
Compilando cdigo fuente
Un compilador traduce todo el cdigo fuente en un
archivo de cdigo mquina y el archivo de cdigo
mquina se ejecuta, como se muestra en la siguiente
figura.

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
18
Sistemas operativos
El sistema operativo (SO) es un
programa que gestiona y controla
las actividades de un ordenador.
Los sistemas operativos ms
populares para ordenadores de uso
general son Microsoft Windows,
Mac OS y Linux. Los programas
de aplicacin, como un navegador
Web o un procesador de textos, no
se pueden ejecutar a menos que el
sistema operativo est instalado y
se ejecute en el equipo.

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
19
Por qu Java?
La respuesta es que Java permite a los usuarios desarrollar
e implementar aplicaciones en Internet para servidores,
computadoras de escritorio y pequeos dispositivos
porttiles. El futuro de la informtica est siendo
profundamente influenciado por Internet, y Java promete
seguir siendo una gran parte de ese futuro. Java es el
lenguaje de programacin de Internet.

Java es un lenguaje de programacin de propsito general.


Java es el lenguaje de programacin de Internet.

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
20
Java, Web y ms all
Java se puede utilizar para desarrollar
aplicaciones independientes.
Java se puede utilizar para desarrollar
aplicaciones que se ejecutan desde un
navegador.
Java tambin se puede utilizar para desarrollar
aplicaciones para dispositivos porttiles.
Java se puede utilizar para desarrollar
aplicaciones para servidores Web.
Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
21
Historia de Java
James Gosling y Sun Microsystems
Oak
Java, 20 de mayo de 1995, Sun World
HotJava. El primer navegador web habilitado para Java
Sitio Web de la historia de java:

http://www.java.com/en/javahistory/index.jsp

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
22
Caractersticas de Java
Java es simple
Java es orientado a objetos
Java es distribuido
Java es intrepretado
Java es robusto
Java es seguro
Java es Arquitectura-Neutral
Java es porttil
Rendimiento de Java
Java es multiproceso
Java es dinmico
www.cs.armstrong.edu/liang/JavaCharacteristics.pdf
Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
23
Caractersticas de Java
Java es simple Java est parcialmente modelado en C ++,
Java es orientado a objetos pero muy simplificado y mejorado. Algunas
personas se refieren a Java como "C++ -"
Java es distribuido porque es como C++, pero con ms
Java es intrepretado funcionalidad y menos aspectos negativos.
Java es robusto
Java es seguro
Java es Arquitectura-Neutral
Java es porttil
Rendimiento de Java
Java es multiproceso
Java es dinmico

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
24
Caractersticas de Java
Java es simple Java es inherentemente orientado a objetos.
Java es orientado a objetos Aunque muchos lenguajes orientados a
objetos comenzaron estrictamente como
Java es distribuido lenguajes procedurales, Java fue diseado
Java es intrepretado desde el principio para ser orientado a
objetos. Programacin orientada a objetos
Java es robusto (OOP) es un enfoque de programacin
Java es seguro popular que est reemplazando las tcnicas
Java es Arquitectura-Neutral de programacin de procedimientos
tradicionales.
Java es porttil
Rendimiento de Java Uno de los temas centrales en el desarrollo
Java es multiproceso de software es cmo reutilizar cdigo. La
programacin orientada a objetos
Java es dinmico proporciona gran flexibilidad, modularidad,
claridad y reutilizacin a travs de la
encapsulacin, la herencia y el polimorfismo.
Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
25
Caractersticas de Java
Java es simple La computacin distribuida implica que
Java est orientado a objetos varios equipos trabajen juntos en una red.
Java est diseado para facilitar la
Java es distribuido computacin distribuida. Dado que la
Java es intrepretado capacidad de conexin en red est
inherentemente integrada en Java, escribir
Java es robusto programas de red es como enviar y recibir
Java es seguro datos desde y hacia un archivo.
Java es Arquitectura-Neutral
Java es porttil
Rendimiento de Java
Java es multiproceso
Java es dinmico

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
26
Caractersticas de Java
Java es simple Necesitamos un intrprete para ejecutar
Java es orientado a objetos programas Java. Los programas se
compilan en el cdigo de la Mquina
Java es distribuido Virtual de Java, llamado bytecode. El
Java es intrepretado bytecode es independiente de la mquina y
puede ejecutarse en cualquier mquina que
Java es robusto tenga un intrprete de Java, que es parte de
Java es seguro la Mquina Virtual de Java (JVM).
Java es Arquitectura-Neutral
Java es porttil
Rendimiento de Java
Java es multiproceso
Java es dinmico

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
27
Caractersticas de Java
Java es simple Los compiladores de Java pueden detectar
Java es orientado a objetos muchos problemas que apareceran por
primera vez en el tiempo de ejecucin en
Java es distribuido otros lenguajes.
Java es intrepretado
Java ha eliminado ciertos tipos de
Java es robusto construcciones de programacin propensas
Java es seguro a errores que se encuentran en otros
Java es Arquitectura-Neutral lenguajes.
Java es porttil Java tiene una caracterstica de manejo de
Rendimiento de Java excepciones en tiempo de ejecucin para
Java es multiproceso proporcionar soporte de programacin
para incrementar la robustez.
Java es dinmico

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
28
Caractersticas de Java
Java es simple
Java es orientado a objetos
Java es distribuido
Java es intrepretado
Java es robusto Java implementa varios mecanismos de
seguridad para proteger su sistema contra
Java es seguro los daos causados por programas de
Java es Arquitectura-Neutral fuentes desconocidas.
Java es porttil
Rendimiento de Java
Java es multiproceso
Java es dinmico

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
29
Caractersticas de Java
Java es simple
Java es orientado a objetos
Java es distribuido
Java es intrepretado
Java es robusto
Java es seguro
Java es Arquitectura-Neutral Escribe una vez, corre en cualquier
Java es porttil lugar
Rendimiento de Java
Con una mquina virtual Java (JVM),
Java es multiproceso puede escribir un programa que se
Java es dinmico ejecutar en cualquier plataforma.

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
30
Caractersticas de Java
Java es simple
Java es orientado a objetos
Java es distribuido
Java es intrepretado
Java es robusto
Java es seguro
Java es Arquitectura-Neutral
Java es porttil
Debido a que Java es neutral en
Rendimiento de Java arquitectura, los programas Java son
Java es multiproceso porttiles. Pueden ejecutarse en
cualquier plataforma sin ser
Java es dinmico recompilados.

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
31
Caractersticas de Java
Java es simple
Java es orientado a objetos
Java es distribuido
Java es intrepretado
Java es robusto
Java es seguro
Java es Arquitectura-Neutral
Java es porttil
Rendimiento de Java Debido a que
Rendimiento de Java Java es neutral en arquitectura, los
Java es multiproceso programas Java son porttiles. Pueden
ejecutarse en cualquier plataforma sin
Java es dinmico ser recompilados.

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
32
Caractersticas de Java
Java es simple
Java est orientado a objetos
Java es distribuido
Java es intrepretado
Java es robusto
Java es seguro
Java es Arquitectura-Neutral
Java es porttil
Rendimiento de Java
Java es multiproceso La programacin multiproceso se integra
perfectamente en Java, mientras que en otros
Java es dinmico lenguajes hay que llamar a procedimientos
especficos del sistema operativo para
habilitar el multiprocesamiento.
Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
33
Caractersticas de Java
Java es simple
Java est orientado a objetos
Java es distribuido
Java es intrepretado
Java es robusto
Java es seguro
Java es Arquitectura-Neutral
Java es porttil
Rendimiento de Java Java fue diseado para adaptarse a un entorno
en evolucin. El nuevo cdigo se puede cargar
Java es multiproceso sobre la marcha sin recompilacin. No es
Java es dinmico necesario que los desarrolladores creen y que
los usuarios instalen nuevas versiones de
software. Las nuevas caractersticas se pueden
incorporar de forma transparente segn sea
necesario.
Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
34
Versiones de JDK
JDK 1.02 (1995)
JDK 1.1 (1996)
JDK 1.2 (1998)
JDK 1.3 (2000)
JDK 1.4 (2002)
JDK 1.5 (2004) a. k. a. JDK 5 or Java 5
JDK 1.6 (2006) a. k. a. JDK 6 or Java 6
JDK 1.7 (2011) a. k. a. JDK 7 or Java 7
JDK 1.8 (2014) a. k. a. JDK 8 or Java 8

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
35
Ediciones JDK
Java Standard Edition (J2SE)
J2SE puede usarse para desarrollar aplicaciones o
applets independientes del lado del cliente.
Java Enterprise Edition (J2EE)
J2EE se puede utilizar para desarrollar aplicaciones del
lado del servidor como servlets Java, Java
ServerPages y Java ServerFaces.
Java Micro Edition (J2ME).
J2ME se puede utilizar para desarrollar aplicaciones
para dispositivos mviles como telfonos y tablets.
Este curso utiliza J2SE para introducir la programacin Java.

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
36
IDEs ms utilizados con Java
NetBeans

Eclipse

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
37
Un programa simple de Java
Listing 1.1
// Este programa imprime Bienvenido a Java!
public class Welcome {
public static void main(String[] args) {
System.out.println(" Bienvenido a Java!");
}
}

Nota: Al hacer clic en el botn verde se muestra el cdigo


Welcome fuente con animacin interactiva. Tambin puede ejecutar el
cdigo en un navegador. Se necesita conexin a Internet
para este botn.
Run Nota: al hacer clic en el botn azul se ejecuta el cdigo de
Windows. Si no puede ejecutar los botones, consulte
www.cs.armstrong.edu/liang/javaslidenote.doc.
Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
38
Creacin y edicin mediante el Bloc de notas
Para usar el Bloc de
notas, escriba notepad
Welcome.java desde el
indicador de DOS.

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
39
Creacin y edicin mediante el Bloc de notas
Para usar WordPad,
escriba write
Welcome.java desde el
indicador de DOS.

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
40
Creacin, compilacin y
ejecucin de programas

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
41
Compilando cdigo fuente Java
Podemos conectar un programa de origen a cualquier mquina con
compiladores apropiados. El programa de origen debe ser recompilado, ya
que el programa objeto slo se puede ejecutar en una mquina especfica.
Hoy en da las computadoras estn conectadas en red para trabajar juntas.
Java fue diseado para ejecutar programas objeto en cualquier plataforma.
Con Java, escribe el programa una vez y compila el programa fuente en un
tipo especial de cdigo objeto, conocido como bytecode. El bytecode puede
ejecutarse en cualquier computadora con una Mquina Virtual Java, como se
muestra a continuacin. Java Virtual Machine es un software que interpreta el
bytecode de Java.

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
42
animation

Seguimiento de la ejecucin de un programa


Inicia el mtodo
principal

// This program prints Welcome to Java!


public class Welcome {
public static void main(String[] args) {
System.out.println("Welcome to Java!");
}
}

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
43
animation

Seguimiento de la ejecucin de un programa


Ejecuta la sentencia

// This program prints Welcome to Java!


public class Welcome {
public static void main(String[] args) {
System.out.println("Welcome to Java!");
}
}

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
44
animation

Seguimiento de la ejecucin de un programa

// This program prints Welcome to Java!


public class Welcome {
public static void main(String[] args) {
System.out.println("Welcome to Java!");
}
}

imprime un mensaje en la
consola

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
45
Two More Simple Examples

WelcomeWithThreeMessages Run

ComputeExpression Run

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
46
Companion
Website
Complementos en la web

Consulte el complemento I.B para instalar y


configurar JDK
Consulte el complemento I.C para compilar
y ejecutar Java desde la ventana de
comandos para obtener detalles

www.cs.armstrong.edu/liang/intro10e

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
47
Compilando y ejecutando Java
desde la ventana de comandos
Aadir al path la ruta al directorio bin de JDK
set path=c:\Program Files\java\jdk1.8.0\bin
Establecer classpath para incluir el directorio actual
set classpath=.
Compilar
javac Welcome.java
Correr
java Welcome

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
48
Compilando y ejecutando Java
Companion
Website desde TextPad
Vea el suplemento II.A en la web para ms detalles

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
49
Anatoma de un programa Java
Nombre de la clase
Mtodo principal
Declaraciones
Terminador de declaracin
Palabras reservadas
Comentarios
Bloques

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
50
Nombre de clase
Cada programa Java debe tener al menos una clase.
Cada clase tiene un nombre. Por convencin, los
nombres de las clases comienzan con una letra
mayscula. En este ejemplo, el nombre de la clase
es Welcome.
// This program prints Welcome to Java!
public class Welcome {
public static void main(String[] args) {
System.out.println("Welcome to Java!");
}
}

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
51
Mtodo principal
La lnea 2 define el mtodo principal. Para ejecutar
una clase, la clase debe contener un mtodo llamado
main. El programa se ejecuta desde el mtodo
principal.

// This program prints Welcome to Java!


public class Welcome {
public static void main(String[] args) {
System.out.println("Welcome to Java!");
}
}

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
52
Sentencia
Una sentencia representa una accin o una secuencia de
acciones. La sentencia System.out.println("Welcome to
Java!). En el programa del Listado 1.1 es una
declaracin para mostrar el saludo "Welcome to Java!.

// This program prints Welcome to Java!


public class Welcome {
public static void main(String[] args) {
System.out.println("Welcome to Java!");
}
}

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
53
Finalizador de instruccin
Cada instruccin/declaracion/sentencia en Java termina con un
punto y coma (;).

// This program prints Welcome to Java!


public class Welcome {
public static void main(String[] args) {
System.out.println("Welcome to Java!");
}
}

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
54
Palabras reservadas
Las palabras reservadas o las palabras clave son palabras
que tienen un significado especfico para el compilador y
no pueden utilizarse para otros fines en el programa. Por
ejemplo, cuando el compilador ve la palabra class,
entiende que la palabra despus de class es el nombre de
la clase.
// This program prints Welcome to Java!
public class Welcome {
public static void main(String[] args) {
System.out.println("Welcome to Java!");
}
}

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
55
Bloques
Un par de llaves en un programa forma un bloque que
agrupa los componentes de un programa.

p
ubl
iccla
ssTes
t{
pu
bli
cstat
icvoi
dmain
(St
ring
[]a
rgs
){ C
la
ssb
loc
k
Sys
tem
.ou
t.p
rin
tln
("W
elc
ometoJ
ava
!")
;Me
tho
dblo
ck
}
}

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
56
Smbolos especiales
Carcter Nombre Descripcin

{} Apertura y cierre Indica un bloque para incluir declaraciones.


de llaves.

() Apertura y cierre Se utiliza con mtodos.


de parntesis.

[] Corchetes de Indica una matriz.


apertura y cierre.

// Doble barra Precede una lnea de comentario.


" " Apertura y cierre Incluyendo una cadena (es decir, secuencia de
de comillas caracteres).
;
Punto y coma Marca el final de una declaracin.

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
57
{ }

// This program prints Welcome to Java!


public class Welcome {
public static void main(String[] args) {
System.out.println("Welcome to Java!");
}
}
Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
58
( )

// This program prints Welcome to Java!


public class Welcome {
public static void main(String[] args) {
System.out.println("Welcome to Java!");
}
}
Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
59
;

// This program prints Welcome to Java!


public class Welcome {
public static void main(String[] args) {
System.out.println("Welcome to Java!");
}
}
Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
60
//

// This program prints Welcome to Java!


public class Welcome {
public static void main(String[] args) {
System.out.println("Welcome to Java!");
}
}
Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
61
""

// This program prints Welcome to Java!


public class Welcome {
public static void main(String[] args) {
System.out.println("Welcome to Java!");
}
}
Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
62
Estilo de programacin y
documentacin
Comentarios apropiados
Convenciones de nombres
Indentacin adecuada y lneas de
espaciado
Estilos de bloques

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
63
Comentarios apropiados
Incluya un resumen al principio del programa para
explicar lo que hace el programa, sus
caractersticas clave, sus estructuras de datos de
apoyo y cualquier tcnica nica que use.

Incluya su nombre, seccin de clase, instructor,


fecha y una breve descripcin al principio del
programa.

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
64
Convenciones de nombres
Elija
nombres significativos y descriptivos.
Nombres de las clases:
Capitalizar la primera letra de cada
palabra en el nombre. Por ejemplo, el
nombre de clase ComputeExpression.

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
65
Indentacin y Espaciado Correcto
Indentation
Indente dos espacios.

Espaciado
Utilice una lnea en blanco para separar
segmentos del cdigo.

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
66
Estilos de bloque
Utilice el end-of-line para las llaves

Next-line public class Test


style {
public static void main(String[] args)
{
System.out.println("Block Styles");
}
}

End-of-line
style
public class Test {
public static void main(String[] args) {
System.out.println("Block Styles");
}
}

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
67
Errores de programacin
Errores de sintaxis
Detectado por el compilador
Errores de tiempo de ejecucin
Hace que el programa aborte
Errores lgicos
Produce un resultado incorrecto

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
68
Errores de sintaxis
public class ShowSyntaxErrors {
public static main(String[] args) {
System.out.println("Welcome to Java);
}
}

ShowSyntaxErrors Run

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
69
Errores en tiempo de ejecucin
public class ShowRuntimeErrors {
public static void main(String[] args) {
System.out.println(1 / 0);
}
}

ShowRuntimeErrors Run

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
70
Errores lgicos
public class ShowLogicErrors {
public static void main(String[] args) {
System.out.println(35 grados Celsius son en Fahrenheit: ");
System.out.println((9 / 5) * 35 + 32);
}
}

ShowLogicErrors Run

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
71
Companion
Website Compilacin y ejecucin
de Java desde NetBeans
Vea el Suplemento I.D en la web para ms detalles

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
72
Companion
Website Compilacin y ejecucin de
Java desde Eclipse
Vea el Suplemento I.D en la web para ms detalles

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
73
Visualizacin de un texto en un
cuadro de dilogo
puede utilizar el mtodo showMessageDialog en la
clase JOptionPane. JOptionPane es una de las
muchas clases predefinidas en el sistema Java, que
puede ser reutilizado en lugar de "reinventar la
rueda".

WelcomeInMessageDialogBox Run

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
74
El mtodo showMessageDialog
JOptionPane.showMessageDialog(null,
"Welcome to Java!",
"Display Message",
JOptionPane.INFORMATION_MESSAGE);

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
75
Dos maneras de invocar el mtodo
Hay varias formas de utilizar el mtodo showMessageDialog.
Por el momento, todo lo que necesitas saber son dos maneras de
invocarlo.
Una es usar una declaracin como se muestra en el ejemplo:
JOptionPane.showMessageDialog(null, x,
y, JOptionPane.INFORMATION_MESSAGE);
donde x es una cadena para el texto que se mostrar, e y es una
cadena para el ttulo del cuadro de dilogo del mensaje.
La otra es usar una declaracin como esta :
JOptionPane.showMessageDialog(null, x);
donde x es la cadena de texto a mostrar.

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
76
Importacin Implcita y Explicita
java.util.* ; // Importacin Implcita

java.util.JOptionPane; // Importacin Explcita

No hay diferencia de rendimiento

Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All
rights reserved.
77

You might also like