Está en la página 1de 47

INTRODUCCIN AL

LENGUAJE JAVA
Ing Edgar Morillo

Agenda

Qu es Java?
Un poco de historia
Funcionamiento de Java
Detalles de la sintaxis Java
Componentes de un programa Java
Paquetes de Java java.lang
Desarrollo de una aplicacin Java JDK e IDEs
Netbeans instalacin y ejemplo

Introduccin al lenguaje Java Silvana Canuto Canete

Qu es Java?
Java es un lenguaje de programacin orientado a
objetos desarrollado a principios de los aos 90.
El lenguaje en s mismo toma mucha de su sintaxis
de C y C++, pero tiene un modelo de objetos ms
simple y elimina herramientas de bajo nivel.
Es independiente de la plataforma. Las primeras
implementaciones de Java rezaban:write once, run
anywhere.
Posee un sistema de administracin de memoria
automtico.
Introduccin al lenguaje Java Silvana Canuto Canete

Un poco de historia

Java se cre originalmente como una


herramienta de programacin para un
proyecto set-top-box conocido como
*7.

Fue realizado por un equipo de 13 personas,


dirigidas por James Gosling.
Los objetivos de Gosling eran implementar una
mquina virtual y un lenguaje con una estructura y
sintaxis similar a C++.
Introduccin al lenguaje Java Silvana Canuto Canete

Un poco de historia (II)


En un principio, el sistema *7 no encontr un lugar
en el mercado.
A principios de los noventa, y sin un mercado para
su herramienta, Gosling y su equipo se reunieron y
notaron que la nueva y popular Internet tenia
exactamente el tipo de configuracin de red que
ellos haban visionado para la industria de la TV por
cable.

Con esto en mente Gosling y su equipo crearon


el navegador WebRunner y realizaron un demo
que mostraba una molcula animada en una
reunin de profesionales de la industria del
entretenimiento e Internet.
Todos sabemos como termina esta historia.
Introduccin al lenguaje Java Silvana Canuto Canete

Porqu Java?
El lenguaje se denomin inicialmente Oak. Luego pas a
denominarse Green tras descubrir que Oak era ya una
marca comercial registrada.
El trmino JAVA fue acuado en una cafetera
frecuentada por algunos de los miembros del equipo.
No est claro si es un acrnimo o no, algunas hipotesis
indican que podra tratarse de las iniciales de sus
creadores: James Gosling, Arthur Van Hoff, y Andy
Bechtolsheim. Otras abogan por Just Another Vague
Acronym.
La hiptesis que ms fuerza tiene es la que Java debe su
nombre a un tipo de caf disponible en la cafetera.
Introduccin al lenguaje Java Silvana Canuto Canete

.java, .class, JVM???

En Java el cdigo fuente se escribe en un archivo de texto


plano con extensin .java.
Luego, el cdigo es compilado a archivos .class. Un
archivo .class no contiene cdigo nativo a un tipo de
procesador, en cambio contiene bytecodes.
Finalmente, la aplicacin es interpretada por la maquina
virtual de Java, transformando los bytecodes en cdigo
nativo en tiempo de ejecucin.
Introduccin al lenguaje Java Silvana Canuto Canete

Bytecode
El bytecode es lenguaje nativo de cualquier implementacin de la
maquina virtual de Java. De esta forma se logra que un programa
Java corra en cualquier plataforma que disponga de una JVM.

Introduccin al lenguaje Java Silvana Canuto Canete

La plataforma Java
Una plataforma es el ambiente de software o hardware en el que
corre un programa.
La plataforma Java consta de dos componentes
> La maquina virtual de Java
> La API de Java (Application Programming Interface)

La API de Java es una vasta coleccin de componentes de


software que proveen un conjunto de funciones tiles.
Introduccin al lenguaje Java Silvana Canuto Canete

Java en detalle
Inicializacin de Variables
El lenguaje Java es fuertemente tipado, lo que significa que
todas las variables deben ser declaradas antes de utilizarse.

int unaVariable = 1;

Introduccin al lenguaje Java Silvana Canuto Canete

10

Java en detalle
Tipos Primitivos

Introduccin al lenguaje Java Silvana Canuto Canete

11

Java en detalle
Tipos Primitivos (II)

Introduccin al lenguaje Java Silvana Canuto Canete

12

La clase String
Java provee soporte especial para las cadenas de
caracteres a travs de la clase java.lang.String
No es un tipo primitivo.
Sin embargo, mediante sobrecarga de operadores pueden
realizarse operaciones como:
String unString = Juan + + Perez;

Java tambin provee un amplio conjunto de operaciones


para manipular las instancias de esta clase.

Introduccin al lenguaje Java Silvana Canuto Canete

13

Operadores: precedencia y
funcionalidad

Introduccin al lenguaje Java Silvana Canuto Canete

14

Operadores: precedencia y
funcionalidad (II)

Introduccin al lenguaje Java Silvana Canuto Canete

15

Ejemplo con operadores arimeticos


int i=2+3; // i vale 5
i=i+1; //i vale 6
i=6*2; //i vale 12
i=2+5*2%8; //i vale4
Introduccin al lenguaje Java Silvana Canuto Canete

16

Ejemplo con operadores posfix y


unarios
int i=5; // i vale 5
System.out.println(i); //Imprime:5
System.out.println(++i); //Imprime:6
System.out.println(i++); //Imprime:6
System.out.println(i); //Imprime:7
Introduccin al lenguaje Java Silvana Canuto Canete

17

Sentencias de control: if
if(expr){
....
}
if(expr)
sentencia;

if(expr){
....
} else {
....
}

Introduccin al lenguaje Java Silvana Canuto Canete

18

Sentencias de control: switch

Switch (num){
case num1:...break;
case num2:...break;
default:...break;
}
Introduccin al lenguaje Java Silvana Canuto Canete

19

Sentencias de control:
while y do-while
while (expr){
....
}

do {
....
}while(expr);

Introduccin al lenguaje Java Silvana Canuto Canete

20

Sentencias de control: for


for (exprInic; condCorte; pasoSig){
....
}
for (int i=0; i<10; i++) {
System.out.println(i);
}//Imprime los numeros del 0 al 9

Introduccin al lenguaje Java Silvana Canuto Canete

21

Estructura de un programa Java


La programacin orientada a objetos se basa en que cada programa es una
simulacin de un mundo real o virtual.
Cada uno de estos mundos esta compuesto de objetos.
Los objetos se comunican a travs de mensajes
Por lo tanto, un programa orientado a objetos no es mas que una
configuracin de un conjunto de objetos y los mensajes que se envan
entre ellos.
El molde que guarda la descripcin de todos los objetos de un mismo tipo
e lo que conocemos como clase.
A su vez, las clases con propsitos similares pueden agruparse en
paquetes.
La ejecucin de un programa comienza en el mtodo main de una clase.

Introduccin al lenguaje Java Silvana Canuto Canete

22

Ejemplo de paquete

Introduccin al lenguaje Java Silvana Canuto Canete

23

Reglas para la creacin de clases y


paquetes
Las clases Java se implementan en archivos
separados.
Cada clase se debe encontrar dentro de un paquete.
El nombre del archivo de la implementacin de clase
debe ser igual al nombre de la clase.
La estructura de paquete debe corresponderse a la
estructura de directorio. Ej: edu.sun.Ejemplo seria
mapeado al archivo .../edu/sun/Ejemplo.java
Introduccin al lenguaje Java Silvana Canuto Canete

24

Estructura de una clase

Introduccin al lenguaje Java Silvana Canuto Canete

25

Modificadores de acceso visibilidad

Introduccin al lenguaje Java Silvana Canuto Canete

26

Ejemplos de paquetes Java


java.io
> El paquete de entrada/salida contiene las clases de acceso a archivos:

FileInputStream y FileOutputStream, etc.

java.lang
> Incluye las clases del lenguaje Java propiamente dicho: Object, Thread,

Exception, System, Integer, Float, Math, String, etc.

java.util
> Miscelnea de clases tiles para muchas cosas en programacin.
> Incluyen, Date (fecha), Dictionary (diccionario), Random (nmeros aleatorios) y

Stack (pila FIFO).

Introduccin al lenguaje Java Silvana Canuto Canete

27

java.lang
Tipos primitivos encapsulados en clases:
>
>
>
>
>
>
>
>
>

Boolean
Byte
Character
Double
Float
Integer
Long
Short
Void

Introduccin al lenguaje Java Silvana Canuto Canete

28

java.lang (II)
Ejemplo: Integer (interfaz pblica):
> public final class Integer extends Number
> Variables:

MAX_VALUE (valor mayor de int)


MIN_VALUE (valor mnimo de int)

> Constructores:

Integer(int)

Integer(String)
> Mtodos:

Conversin a otros tipos: doubleValue(), floatValue(), intValue(),


parseInt(String), toString(), valueOf(String)
Obtencin de valor como un int: intValue()
Introduccin al lenguaje Java Silvana Canuto Canete

29

java.lang (III)
Clases para cadenas de caracteres:
> clase String: conjunto de caracteres no modificable
> clase StringBuffer: conjunto de caracteres modificable

public final class String


extends Object implements
Serializable
Introduccin al lenguaje Java Silvana Canuto Canete

30

java.lang (IV)
Constructores:
> String(byte[])
> String(char[])
> String(String)

Ejemplos:

char[]
String
String
String

chars = {a,b,c};
s = new String(chars);
s1 = Hello;
s2 = new String(s1);
Introduccin al lenguaje Java Silvana Canuto Canete

31

java.lang (V)
Mtodos de manipulacin de strings:
> length() , concat(String), indexOf(String), lastIndexOf(String) ,

toUpperCase(), ...

Mtodos de conversin desde otros tipos:


> valueOf(double), valueOf(int), ...

Operador + en strings est sobrecargado:


> 3+abc+3.4

Introduccin al lenguaje Java Silvana Canuto Canete

32

java.lang (VI)
Clase Math
Constantes:
> E, PI
Mtodos:
> abs(double), acos(double), asin(double), atan, cos,
exp, log, max(double, double), pow(double, double),
round (float)
Introduccin al lenguaje Java Silvana Canuto Canete

33

java.lang (VII)
Clase System
> Variables (estticas):

in: "standard input stream. Normalmente es el teclado


out: "standard output stream. Normalmente es ventana de
mensajes
err: "standard" error output stream. Normalmente es ventana
de mensajes

Mtodos:
> getProperties(), gc() - fuerza a utilizar el administrador de
memoriaIntroduccin al lenguaje Java Silvana Canuto Canete

34

Otros paquetes
Package java.util
> Clases: Vector, Date, HashMap, StringTokenizer

Package java.text
> Clases: DateFormat, DecimalFormat (sirven para variantes de

formato).

Package java.math
> Clases: BigDecimal, BigInteger (arbitraria precisin y

capacidad).

Introduccin al lenguaje Java Silvana Canuto Canete

35

Java Development Kit (JDK)


El JDK consiste de lo siguiente:
> El Java development tools, incluyendo el compilador,
debugger y el intrprete Java.
> Las Java class libraries organizadas como una coleccin
de paquetes.
> Un nmero importante de programas de demostracin.
> Varias herramientas de soporte y componentes,
incluyendo el cdigo fuente de las clases en la
biblioteca.

URL: java.sun.com/javase/downloads
Introduccin al lenguaje Java Silvana Canuto Canete

36

Ambientes de desarrollo Java


(IDEs)

Un IDE (del ingls Integrated Development Enviroment). Es


un ambiente que integra un conjunto de herramientas
(editor con prestaciones especiales, compilador,
administracin de proyectos, debugger,etc) que permiten
realizar todo el proceso de desarrollo dentro del mismo.
Si bien es posible escribir nuestros programas java en
cualquier editor de texto y compilarlos desde una consola
con javac, es mas cmodo y recomendable trabajar desde
un IDE.

Introduccin al lenguaje Java Silvana Canuto Canete

37

Y que tiene un IDE que no tenga


mi bloc de notas?

En general, todos los editores de los IDEs mas modernos


proveen:
> Un editor language aware: indentacin de cdigo, resaltador
de sintxis, matching de variables y llaves, etc.
> Parsing en tiempo de ejecucin: correccin de errores,
remarcado de ocurrencias, tips, arreglos sencillos, etc.
> Generacin automtica de cdigo y funciones para
completar cdigo mientras escribimos.
Administracin de proyectos
Debugger
Mltiples opciones de configuracin
Introduccin al lenguaje Java Silvana Canuto Canete

38

Algunos de los IDEs mas utilizados

Introduccin al lenguaje Java Silvana Canuto Canete

39

El IDE NetBeans es un ambiente de desarrollo de cdigo


abierto creado a partir de la plataforma homnima
Originalmente desarrollado por Sun Microsystems,
actualmente mantenido por la comunidad NetBeans
(aunque aun recibe soporte de Sun como producto).
Es multiplataforma
Licencias CDDL y GPL 2.
Todas las funciones en NetBeans son provistas por
mdulos.
Introduccin al lenguaje Java Silvana Canuto Canete

40

Proceso de instalacin de
NetBeans
Bajar e instalar la ltima versin del JDK (requerido).
Ingresar a
http://download.netbeans.org/netbeans/6.0/final/ o a
http://download.netbeans.org/netbeans/6.1/beta/ y bajar
la versin correspondiente a nuestro sistema operativo.
Ejecutar el instalador (.sh o .exe, dependiendo). Seguir el
proceso de instalacin y ejecutar la aplicacin netbeans al
finalizar el mismo.
Introduccin al lenguaje Java Silvana Canuto Canete

41

Ejemplo de aplicacin en NetBeans

Introduccin al lenguaje Java Silvana Canuto Canete

42

Aprender Java en la web


Sun's Java Tutorials
> http://java.sun.com/docs/books/tutorial/
Learning Connection
> http://learningconnection.sun.com
Java Passion
> http://www.javapassion.com/
Introduccin al lenguaje Java Silvana Canuto Canete

43

Acelera tu carrera profesional con SAI


Entrenamiento GRATIS va web de JavaTM, SolarisTM y mas.
> Pgina de la iniciativa: http://ar.sun.com/training/sai/index.jsp
> Cursos en: http://learningconnection.sun.com

Company name: SAI-Universidad de La Punta


Company ID: CUS-0000116543

Introduccin al lenguaje Java Silvana Canuto Canete

44

Acelera tu carrera profesional con SAI (II)


Increment tu potencial de obtener salarios mayores con
certificaciones Sun
> Sun Certified Associate/Programmer for the Java 2 Platform SE
> Sun Certified Web Component Developer for Java EE
> Sun Certified Mobile Application Developer for Java ME
> Sun Certified System/Network Admin for Solaris Operating

System

Exmenes de entrenamiento gratis


Exmenes oficiales rebajados de U$S 120-200 a U$S 40

Introduccin al lenguaje Java Silvana Canuto Canete

45

Preguntas?

Introduccin al lenguaje Java Silvana Canuto Canete

46

MUCHAS GRACIAS!
Ing Edgar Morillo

47

También podría gustarte