Вы находитесь на странице: 1из 9

El lenguaje Java es un lenguaje completamente orientado a objetos. Todo en Java es un objeto.

Durante el resto del captulo vamos a ver las caractersticas generales del lenguaje Java (slo las necesarias en J2ME), lo ue nos permitir! entrar en el siguiente captulo con la base necesaria para empe"ar a programar M#Dlets. $n M#Dlet es un programa capa" de correr en un dispositivo mvil. El nombre guarda cierta similitud (no casual) con los programas capaces de correr en un navegador (applets). %i uieres ampliar conocimientos sobre el lenguaje Java, puedes consultar la bibliogra&a en los ap'ndices de este libro. (ariables ) Tipos de Datos.* +as variables nos permiten almacenar in&ormacin ) tal como indica su propio nombre, pueden variar a lo largo de la ejecucin del programa. $na variable se de&ine a partir de un nombre ) un tipo. El nombre de una variable puede ser cual uiera, aun ue conviene utili"ar nombres claros ) relacionados con el cometido de la variable. %lo ,emos de tener en cuenta algunas reglas en los nombres de variables*.o pueden contener espacios en blanco. *Dos variables no pueden tener el mismo nombre. *.o podemos utili"ar palabras reservadas de Java. +os programadores en Java suelen seguir una serie de convenciones a la ,ora de nombrar las variables. Esto &acilita la lectura de cdigo de terceros. *+as variables comien"an con una letra min/scula. *%i la variable est! compuesta por dos o m!s palabras, la segunda () las siguientes tambi'n) comien"an por letra ma)/scula. 0or ejemplo numeroDe(idas. *+os nombres de las clases comien"an por letra ma)/scula. *+as variables tienen asociado un tipo. El tipo de la variable de&ine u' dato es capa" de almacenar. +os tipos de datos v!lidos en Java son los siguientesbyte. Ocho bits. short. Nmero entero de 16 bits. int. Nmero entero de 32 bits. long. Nmero entero de 64 bits. float. Nmero en punto flotante de 32 bits. double. Nmero en punto flotante de 64 bits. char. Carcter !C"". boolean. #alor $erdadero o falso. 1a) ue aclarar ue los tipos &loat ) double, a/n &ormando parte del standard Java, no est!n disponibles en %2&'.

2ntes de poder utili"ar una variable, ,a) ue declararla, es decir, darle un nombre ) un tipo. +a siguiente lnea declara una variable llamada vidas de tipo entero de 32 bits. int $idas( $na variable por s misma no es mu) /til, a no ser ue podamos reali"ar operaciones con ellas. Estas operaciones se reali"an por medio de operadores. 1a) cinco tipos de operadores. *De asignacin *2ritm'ticos *4elacinales *+gicos *2 nivel de bit 5uando declaramos una variable 'sta no contiene ning/n valor (realmente si, tiene el valor null). 0ara darle un valor a la variable utili"amos el operador de asignacin 6 (signo de igualdad). 2s, para asignar el valor 3 a la variable vidas, procedemos de la siguiente &orma. $idas ) 3( 7bserva el punto ) coma (() al &inal de la lnea. En Java cada instruccin acaba con un punto ) coma. Tenemos disponibles otros operadores de asignacin7perador a *) b a +) b a ,) b a -) b a .) b a /) b a 0) b %igni&icado a)a*b a)a+b a)a,b a)a-b a)a.b a)a/b a)a0b

+os siguientes operadores ue vamos a ver son los operadores aritm'ticos. 1a) dos tipos, los operadores unarios ) los binarios. +os operadores aritm'ticos unarios son ** y ++. 0ueden ir delante o detr!s de una variable, ) su misin es incrementar (o decrementar) en una unidad el valor de la variable. %i se sit/an tras la variable ,ablamos de postincremento (o postdecremento), es decir, la variable es incrementada (o decrementada) despu's de ,aberse ,ec,o uso de ella. %i por el contrario va delante ,ablamos de preincremento (o predecremento), es decir,

primero se modi&ica su valor ) despu's se ,ace uso de la variable. (eamos un ejemplonue$as#idas ) 88$idas( En este ejemplo, primero incrementamos el valor de la variable vidas, ) despu's se lo asignamos a la variable nuevas(idas. enemigo ctual ) enemigos++( 2 u, primero asignamos a la variable enemigo2ctual el valor de la variable enemigos, ) despu's decrementamos el valor de esta /ltima variable. El otro tipo de operadores aritm'ticos son los binarios. 7perador a*b a+b a,b a-b a.b %igni&icado !uma de a y b 1iferencia de a y b 2roducto de a por b 1iferencia entre a y b 3esto de la di$isi4n entre a y b

+os operadores relacionales nos permiten comparar dos variables o valores. $n operador relacional devuelve un valor de tipo boolean, es decir, verdadero (true) o &also (&alse). 7perador a5b a7b a 5) b a 7) b a )) b a 8) b %igni&icado true si a es mayor 6ue b true si a es menor 6ue b true si a es mayor o igual 6ue b true si a es menor o igual 6ue b true si a es igual 6ue b true si a es distinto a b

+os operadores lgicos nos permiten reali"ar comprobaciones lgicas del tipo 9, 7 ) .7. 2l igual ue los operadores relaciones devuelven true o &alse. 7perador a // b a 00 b 8a %igni&icado true si a y b son $erdaderos true si a o b son $erdaderos true si a es false9 y false si a es true

5uando veamos la estructura de control i&() nos uedar! m!s clara la utilidad de los operadores lgicos.

+os operadores de bits trabajan, como su propio nombre indica, a nivel de bits, es decir, permite manipularlos directamente. 7perador a 55 b a 77 b a 777 b a/b a0b a:b ;a %igni&icado Despla"a los bits de a ,acia la derec,a b veces Despla"a los bits de a ,acia la i" uierda b veces #gual ue el anterior pero sin signo %uma lgica entre a ) b 7 lgico entre a ) b 7 e:clusivo (:or) entre a ) b .egacin lgica de a (not)

5uando una e:presin est! compuesta por m!s de un operador, estos se aplican en un orden concreto. Este orden se llama orden de precedencia de operadores. En la siguiente tabla se muestra el orden en el ue son aplicados los operadores. 7rden ; 2 3 < = ? @ AB C ;E ;; ;2 ;3 ;< ;= 7peradores operadores su&ijo operadores unarios creacin o tipo multiplicadores suma>resta despla"amiento relacionales igualdad bitDise 2.D bitDise e:clusive 74 bitDise inclusive 74 2.D lgico 74 lgico condicional asignacin <= . >params? e@pr** e@pr++ **e@pr ++e@pr *e@pr +e@pr ; 8 neA >type?e@pr ,-. *+ 77 55 555 7 5 7) 5) instanceof )) 8) / : 0 // 00 BC ) *) +) ,) -) .) :) /) 0) 77) 55) 555)

Palabras clave

+as palabras claves son a uellos identi&icadores reservados por Java para un objetivo determinado ) se usan slo de la &orma limitada ) espec&ica. Java tiene un conjunto de palabras clave m!s rico ue 5 o ue 588, por lo ue s est! aprendiendo Java con conocimientos de 5 o 588, aseg/rese de ue presta atencin a las palabras clave de Java. +as siguientes palabras son palabras reservadas de Java-

abstact case const else float if int null

boolean cast continue extends for implements interface operator

break catch default false future import long outer

byte char do final generic inner native package

byvalue class double finally goto instanceof new private

protected static throw var

public super throws void

rest switch transient volatile

return syncroniced true while

short this try

1a) un tipo especial de m'todo ue se llama constructor. $n constructor es un m'todo ue se llama e:actamente igual ue la clase a la ue pertenece. 5uando creamos un objeto con neD, el m'todo constructor es ejecutado de &orma autom!tica. 1a) cuatro tipos de modi&icadores ue permiten especi&icar u' tipo de clase estamos declarando. +os tipos de modi&icadores son los siguientes.

abstract. $na clase abstract tiene al menos un m'todo abstracto. $na clase abstracta slo puede
ser ,eredada para implementar los m'todos abstractos ue contiene. En ning/n caso podemos instanciar un objeto de este tipo. &inal. $na clase &inal no puede ser ,eredada por ninguna otra. public. $na clase public puede ser accedida por otras clases pertenecientes al mismo pa uete, o por cual uier otra siempre ue sea importada o ,eredada. s)nc,roni"able. %igni&ica ue esta clase slo puede ser accedida por un slo t,read a la ve". %e utili"a en aplicaciones multi,ebra para asegurar ue no ,a) problemas de sincroni"acin entre ,ilos.

2l igual ue tenemos modi&icadores para las clases, tambi'n tenemos modi&icadores de acceso a las variables miembro ) a los m'todos. public. %e puede acceder desde &uera de la clase a la ue pertenece. protected. %lo las subclases pueden acceder a este miembro de la clase. private. %lo se puede acceder a la variable o al m'todo desde el interior de la clase. &riendl). Es la opcin por de&ecto si no se especi&ica nada. 0ermite slo el acceso desde las clases pertenecientes al mismo pa uete. $n pa uete nos permite agrupar clases bajo un nombre com/n, por ejemplo, si ,ici'ramos una librera capa" de manejar gr!&icos, tendramos un montn de clases encargadas de manejar el color, p:eles, im!genes, etc... Tiene lgica agrupar todas estas clases dentro de un pa uete. 5uando creamos un pa uete, las clases ue est!n incluidas se almacenan en un mismo directorio con el nombre del pa uete. #ndicamos ue una clase pertenece a un pa uete concreto mediante la palabra reservada pacFage al principio del arc,ivo &uente.

Palabras reservadas
La lista de palabras reservadas es: abstract . Como modificador de clase indica que es abstracta, esto es, que tiene mtodos abstractos boolean . Tipo de datos booleano (true o false). break. Como en C. byte . Tipo de datos de un byte. case. Como en C. catch . eco!e una e"cepci#n. char. como en C. class . $ndicador de clase. const. %in usar por ahora (ver static &inal ). continue. Como en C. default. Como en C. do. Como en C. double . Tipo de datos de m&"ima precisi#n. else. Como en C. e"tends . $ndica que una clase es hi'a de otra. false . (l valor falso de los datos booleanos. final . $mpide que una clase ten!a subclases. finally . $ndica lo que se e'ecutar& despus de un bloque tr) > catc,. float . Tipo de datos real de precisi#n simple. for. Como en C. !oto. %in usar por ahora. if. Como en C. implements . $ndica que se usa un interfa). import. Car!a un paquete. instanceof . *perador que comprueba si un ob'eto es de una clase. int . Tipo de datos enteros por defecto.

interface . +eclara un interfa). lon! . tipo de datos enteros de m&"ima precisi#n. native. $ndica la introducci#n de c#di!o nativo (C, C,,,...). ne- . +eclara un nuevo ob'eto. null. Lo mismo que en C. %e puede usar para declarar cadenas vac.as. packa!e. +efine el paquete al que pertenece una clase. private . $ndica que una variable no es accesible fuera de su clase o que una clase no es accesible fuera de su superclase. protected . $ndica que una variable s#lo es accesible desde las clases del mismo paquete. public . $ndica la accesibilidad total de clases o variables. return. Lo mismo que en C. short . Tipo de datos de enteros peque/os. static . $ndica un atributo o mtodo est&tico. strictfp. 0/adido en 1ava 2. (st& relacionado con el formato de coma flotante. super . $ndica la superclase. s-itch. $!ual que en C. synchroni)ed . $ndica que una clase queda bloqueada mientras la utili)a un thread (no lo pueden usar otros). this . $ndica la presente clase o thread. thro- . Lan)a una e"cepci#n. thro-s . (specifica que un mtodo puede lan)ar cierta e"cepci#n. transient. $ndica que los atributos de una clase no se almacenan (3). true . (l valor verdadero de los datos booleanos. try . Limita el c#di!o que puede dar lu!ar a una e"cepci#n. void. Como en C. volatile. Como en C. -hile. Como en C.

http:44---.uam.es4personal5pdi4ciencias4fchami)o4a!enda4apuntesde'ava.html http:44---.mail"mail.com4curso4informatica4'2me4capitulo6.htm http:44pisuer!a.inf.ubu.es4lsi4$nvest41ava4Tuto4$$57.htm

Вам также может понравиться