0 calificaciones0% encontró este documento útil (0 votos) 45 vistas17 páginasEstructura en Java
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido,
reclámalo aquí.
Formatos disponibles
Descarga como PDF o lee en línea desde Scribd
2. Estructura de un programa Java
Un programa describe cémo un ordenador debe interpretar las érdenes del
programador para que ejecute y realice las instrucciones dadas tal como
estan escritas. Un programador utiliza los elementos que ofrece un lenguaje
de programacién para disefiar programas que resuelvan problemas
concretos 0 realicen acciones bien definidas.
El siguiente programa Java muestra un mensaje en la consola con el texto
“Hola Mundo”.
”
* Este prograna escribe el texto "Hola Mundo" en la consola
* utilizando el método System.out.printin()
“
public class HolaMundo {
public static void main (String{] args) (
System.out.printin ("Hola Mundo");
La estructura de un programa Java
En este programa se pueden identificar los siguientes elementos del
lenguaje Java: comentarios, definiciones de clase, definiciones de método y
sentencias.
Comentario. El programa comienza con un comentario. El delimitador de
inicio de un comentario es /* y el delimitador de fin de comentario es */. El
texto del primer comentario de este ejemplo seria: ‘Este programa escribe
el texto “Hola Mundo” en la consola utilizando el método
System.out.printin()'. Los comentarios son ignorados por el compilador y
solo son utiles para el programador. Los comentarios ayudan a explicar
aspectos relevantes de un programa y lo hacen més legible. En un
comentario se puede escribir todo lo que se desee, el texto puede ser de
una o més lineas.Definicién de clase. La primera linea del programa, después del primer
comentario. Define una clase que se llama Holalfundo. La definicién de la
clase comienza por el cardcter { y termina con el cardcter }. El nombre de
la clase lo define el programador.
Definicién de método. Después de la definicién de clase se escribe la
definicién del método main (). Todos los programas Java deben incluir un
método main(). Este método indica las sentencias a realizar cuando se
ejecuta un programa. Un método es una secuencia de sentencias
ejecutables. Las sentencias de un método quedan delimitadas por los
caracteres { y } que indican el inicio y el fin del método, respectivamente.
Sentencia. Dentro del método main() se incluye una sentencia para
mostrar un texto por la consola. Los textos siempre se escriben entre
comillas dobles para diferenciarlos de otros elementos del lenguaje. Todas
las sentencias de un programa Java deben terminar con el simbolo punto y
coma. Este simbolo indica al compilador que ha finalizado una sentencia.
Una vez que el programa se ha editado, es necesario compilarlo y ejecutario
para comprobar si es correcto. Al finalizar el proceso de compilacién, el
compilador indica si hay errores en el cédigo Java, dénde se encuentran y el
tipo de error que ha detectado: léxico, sintactico o semédntico.
/* Este prograna calcula el perimetro de una circunferencia */
public class PerimetroCircunferencia {
public static void main (String{] azge)
// declaracién de PI y la variables radio y perimetro
final double PI = 3,1415926536;
double adie = 25.0, perimetzo;
perimetro = 2.0*PI*radio;
System.out.print ("El perimetro de la circunferencia de radio
System. out .print (radio);
Syotem.out-print ("es");
System. out .print (perimetro);En un programa Java las sentencias se ejecutan secuencialmente, una
detras de otra en el orden en que estan escritas.
En este ejemplo se puede ver que dentro del método main() se incluye un
comentario de una sola linea que comienza con //. A continuacién se
declaran las variables PZ, radio y perimetro, todas ellas de tipo double
porque almacenan numeros reales. 2 representa un valor constante, por lo
que es necesario utilizar el delimitador inal y asignarle el valor
3.1415926536 correspondiente al numero pi.
Después de las declaraciones, se asigna el valor 25.0 a la variable radio y
se calcula el perimetro. Finalmente, se muestra el resultado del célculo del
perimetro para una circunferencia de radio 25.
En este ejemplo se utilizan variables numéricas de tipo double. Cada
variable almacena un ntimero real. La parte entera del niimero se separa de
los decimales con un punto, no con una coma. Esta es una caracteristica de
Java que se debe tener en cuenta, de lo contrario, el compilador no
entiende que se trata de un niimero real.
El valor 25.0 almacenado en la variable radio es una magnitud para la que
no se indican sus unidades. El programador es responsable de que los
célculos se realicen correctamente y de realizar la conversién de unidades
cuando sea necesario.Para escribir un mensaje por la consola se utilizan los métodos
un
System.out.print() y System.out.printin(). Para escril
mensaje sin saltar a la linea siguiente se utiliza system.out.print(),
system.out.printin() escribe un mensaje y da un salto de linea.
éQué hace el siguiente cédigo Java?
System.out.print ("Hola");
System.out.print (" ");
System.out.print ("Mundo") ;
En este ejemplo se escribe el texto "Hola Mundo” en la consola.
Hola Mundo
Qué pasaria si se omitiera la segunda linea de cédigo?,
System. out.print ("Hola");
System. out .print ("Mundo") ;
En este caso se escribiria "HolaMundo” sin el espacio de separacién entre
las dos palabras.
HolaMundo
Si en vez de utilizar el método System.out .print () se utiliza el método
system.out.println(), entonces el mensaje se escribe en dos lineas
distintas.
System. out .print1n ("Hola");
System. out .print1n ("Mundo'
En este ejemplo, se escribiria “Hola” y “Mundo” en dos lineas.
Hola
MundoCombinando el uso de los métodos system.out.print() y
System.out.print1n() se puede escribir cualquier mensaje en la consola
saltando de linea cuando sea necesario. Ademas, ambos métodos permiten
utilizar el operador + para concatenar textos.
Elsi
nte cédigo Java escribe “Hola Mundo” en la consola.
System.out.print ("Hola");
System. out. print (
System. out.print ("Mundo") ;
En este caso se ejecutan tres métodos System.out .print (). Este cédigo
se puede simplificar utilizando un solo método system. out.print() y el
operador + para concatenar los textos “Hola”, "” y “Mundo”
System.out.print ("Hola" + " " + "Mundo");
También se puede escribir directamente el mensaje “Hola Mundo”. El
resultado es el mismo y el cédigo es mas claro.
System.out.print ("Hola Mundo") ;
Para mostrar por la consola un texto seguido del valor almacenado de una
variable se puede ejecutar dos veces el método system. out.print ():
System.out.print ("El perimetro es ");
System.out.print (perimetro) ;
Este cédigo se puede simplificar utilizando el operador + para concatenar el
texto “El perimetro es ” con el valor almacenado en la variable per imet ro.
System.out.print ("El perimetro es " + perimetro);En ambos casos el resultado es el mismo. Por ejemplo, si el valor
almacenado en la variable perimetro fuera 157.08 la salida por la consola
seria:
gl perimetro es 157.08
Los elementos de un programa Java
A continuacién se describe la definicién Iéxica y sintactica de los elementos
de un programa Java: comentarios, identificadores, variables y valores,
tipos primitivos, literales, operadores, expresiones y expresiones aritmético-
logicas.
Comentarios
En un programa Java hay tres tipos de comentarios.
Comentario de bloque. Empieza por /* y termina por */. El compilador
ignora todo el texto contenido dentro del comentario.
I*
* El programa HolaMundo se utiliza para aplicar los
* métodos System.out.print() y System.out.print1n()
+
Comentario de documentacién. Empieza por /** y termina por */. Java
dispone de la herramienta javadoc para documentar automaticamente los
programas. En un comentario de documentacién normaimente se indica el
autor y la versién del software.
jee
* Programa HolaMundo
* @author Fundamentos de Informatica
* @version 1.0
* @see Referencias
*/Comentario de linea. Empieza con //. El comentario comienza con estos
caracteres y termina al final de la linea.
J/ ®1 método System.out.printin() salta la linea
El uso de comentarios hace més claro y legible un programa. En los
comentarios se debe decir qué se hace, para qué y cual es el fin de nuestro
programa. Conviene utilizar comentarios siempre que merezca la pena
hacer una aclaracién sobre el programa.
Identificadores
EI programador tiene libertad para elegir el nombre de las variables, los
métodos y de otros elementos de un programa. Existen reglas muy estrictas
sobre los nombres que se utilizan como identificadores de clases, de
variables 0 de métodos.
Todo identificador debe empezar con una letra que puede estar seguida de
més letras o digitos. Una letra es cualquier simbolo del alfabeto y el
cardcter’_'. Un digito es cualquier caracter entre ‘0’ y ‘9’.
Los identificadores Hola, hola, numero, numerorar, numeroimpar,
numero_impa:
validos. El identificador Inunero no es vélido porque empieza con un di
numero_par, nombre, apellidol y apellido2 son
ito,
no con una letra.
Cualquier identificador que empiece con una letra seguida de més letras 0
digitos es valido siempre que no forme parte de las palabras reservadas del
lenguaje Java. El lenguaje Java distingue entre letras mayusculas y
mintsculas, esto signifi
‘a que los identificadores numeroPar y numeropar
‘son distintos.
Existen unas normas basicas para los identificadores que se deben respetar.
= Los nombres de variables y métodos empiezan con miniisculas. Si se
trata de un nombre compuesto cada palabra debe empezar con
mayiscula y no se debe utilizar el guién bajo para separar las palabras.
Por ejemplo, los identificadores calcularSueldo, setNombre 0
getNombre son validos.= Los nombres de clases empiezan siempre con mayisculas. En los
nombres compuestos, cada palabra comienza con mayuscula y no se
debe utilizar el guién bajo para separar las palabras. Por ejemplo,
HolaMundo, PerimetroCircunferencia, Alumno 0 Profesor son
nombres validos.
= Los nombres de constantes se escriben en maylisculas. Para nombres
compuestos se utiliza el guién bajo para separar las palabras. Por
ejemplo, Pi, MINIMO, MAXIMO 0 TOTAL ELEMENTOS son nombres
validos.
Variables y valores
Un programa Java utiliza variables para almacenar valores, realizar cdlculos,
modificar los valores almacenados, mostrarlos por la consola, almacenarlos
en disco, enviarlos por la red, etc. Una variable almacena un tnico valor.Una variable se define por un nombre, un tipo y el rango de valores que
puede almacenar.
EI nombre de une variable permite hacer referencia a ella. Este nombre
debe cumplir las reglas aplicables a los identificadores. El tipo indica el
formato de los valores que puede almacenar la variable: cadenas de
caracteres, valores légicos, numeros enteros, ntimeros reales 0 tipos de
datos complejos. EI rango indica los valores que puede tomar la variable.
Por ejemplo, una variable de tipo ntimero entero, con nombre
mesNacimiento puede almacenar valores positivos y negativos, lo que no
tiene sentido cuando se trata de meses del afio. El rango valido para esta
variable seria de 1a 12.
Para declarar una variable en Java se indica el tipo y su nombre.
int mesNacimiento;
En este ejemplo se indica que la variable es de tipo entero (int) y su
nombre es mesNacimiento. Una vez declarada una variable, se puede
utilizar en cualquier parte del programa referenciéndola por su nombre.
Para almacenar un valor en una variable se utiliza el operador de asignacién
y a continuacién se indica el valor, por ejemplo 2.
mesNacimiento 2
Apartir de este momento la variable mesNacimiento almacena el valor 2 y
cualquier referencia a ella utiliza este valor. Por ejemplo, si se imprime el
valor de la variable por la consola, muestra el valor 2.
System. out .print (mesNacimiento) ;
Java permite declarar e inicializar una variable en una sola sentencia.
int diaNacimiento
"
io
2
int mesNacimiento
"
wEn este ejemplo se declaran las variables diaNacimiento con el valor 20 y
mesNacimiento con valor 3.
Si se declara una constante, entonces se debe utilizar el delimitador tinal
y es necesario indicar su valor. En la siguiente declaracién se define el valor
de la constante pi de tipo double para almacenar un numero real.
final double PI = 3.141592653
Es conveniente utilizar nombres apropiados para las variables. El nombre de
una variable debe indicar para qué sirve. El nombre de una variable debe
explicarse por si mismo para mejorar la legibilidad del programa.
Si se desea declarar mas de una variable a la vez se deben separar las
variables en la sentencia de la declaracién.
int dia-20, mes=2, afio-2020;
En este ejemplo se deciaran las variables enteras dia, mes y afio.
aay
variable dia se inicializa con el valor 20, mes con 2 y afio con 2020.
siguiente declaracién es equivalente a la anterior.
int dia:
int mes:
int afio=2020;
Tipos primitivos
las variables de java pueden ser de un tipo primitivo de datos o una
referencia a un objeto. Los tipos primitivos permiten representar valores
basicos. Estos tipos se clasifican en nimeros enteros, nimeros reales,
caracteres y valores booleanos.
Numeros enteros. Representan nuimeros enteros positives y negativos con
distintos rangos de valores, desde cientos a trillones. Los tipos enteros de
Java son byte, int, short y long.Nameros reales. Existen dos tipos de nimeros reales en Java, float y
double. La diferencia entre ellos esta en el numero de decimales que
tienen capacidad para expresar y en sus rangos de valores.
Caracteres. El tipo char permite representar cualquier cardcter Unicode.
Los caracteres Unicode contienen todos los caracteres del alfabeto de la
lengua castellana.
Booleano. Se utiliza para representar los valores légicos verdadero y falso.
Solo tiene dos valores true y false.
La siguiente tabla resume los tipos primitivos de Java.
Tipo Descripcién Valor minimo y maximo
byte Entero con signo -128.a 127
short Entero con signo ~32768 a 32767
int Entero con signo ~2147483648 a 2147483647
'922117036854775808 a
long Entero con signo
4+922117036854775807
£3.40262347e+36 a
float Real de precisién simple
41.40239846e-45
£1,7976931348623157e+309
double Real de precisién doble
+£4,94065645841246544e-324
char Caracteres Unicode ‘\u0000 a \UFFFF
boolean Valores ldgicos true, false
Literales
Se denomina literal a la manera en que se escriben los valores para cada
uno de los tipos primitivos.
Nameros enteros. Un numero entero en Java se puede escribir en
decimal, octal 0 en hexadecimal. Cuando se utiliza el sistema octal es
necesario poner el digito 0 delante del nimero. Si se utiliza el sistema
hexadecimal se debe poner Ox delante del numero. Por ejemplo, el numero
decimal 10 se puede escribir 012 en octal y 0xA en hexadecimal. Los
numeros enteros se supone que pertenecen al tipo int.Nameros reales. Un numero real en Java siempre debe tener un punto
decimal 0 un exponente. Por ejemplo, el numero 0.25 se puede expresar
también como 2.5e-1. Los nlmeros reales se supone que pertenecen al tipo
double.
Booleanos. Los valores ldgicos solo pueden ser true y false. Se escriben
siempre en minusculas.
Caracteres. Los valores de tipo caracter representan un caracter Unicode.
Se escriben siempre entre comillas simples, por ejemplo ‘a’, ‘A’, '0', *
Java un cardcter se puede expresar por su cédigo de la tabla Unicode en
octal 0 en hexadecimal. Los caracteres que tienen una representacién
especial se indican en la siguiente tabla.
Cardcter si
\» Retroceso
\ Tabulador
ww Salto de linea
v ‘Cambio de linea
v Cardcter comilla doble
V Cardcter comilla simple
\ Cardcter barra hacia atrésTextos. Un texto en Java pertenece a la clase String y se expresa como el
texto entre comillas dobles. Un texto siempre debe aparecer en una sola
linea. Para dividir un texto en varias lineas se debe utilizar el operador +
para concatenar textos.
Un texto puede estar vacio o contener uno o més caracteres. Por ejemplo,
“Hola Mundo” es un texto de 10 caracteres, mientras que “” es un texto
vacio y tiene 0 caracteres. El texto “a” es diferente del carécter ‘a’ de tipo
char.
Operadores
Cada tipo puede utilizar determinados operadores para realizar operaciones
© calculos.
Nimeros enteros. Al realizar una operacién entre dos ntimeros enteros, el
resultado siempre es un numero entero. Con los nuimeros enteros se
pueden realizar operaciones unarias, aditivas, multiplicativas, de incremento
y decremento, relacionales, de igualdad y de asignacién.
= Una operacién unaria permite poner un signo delante: +5, -2.
m= Una operacién aditiva se refiere a la suma y la resta: 2+3, 5-2.
= Una operacién multiplicativa multiplica o divide dos valores: 5*2, 5/2. El
operador % calcula el resto de la division entera 5%2.
= Un incremento 0 decremento aumenta o decrementa en 1 el valor de
una variable: ++numero, numero++, --numero, numero--. Si el
operador va antes de la variable, primero se realiza la operacién y se
modifica el valor de la variable. Si el operador va después de la variable,
su valor se modifica al final.
= Un operador relacional permiten comparar dos valores: >, <, >= y <=.
El resultado de la comparacién es un valor booleano que indica si la
relacin es verdadera 0 falsa.
= Un operador de igualdad compara si dos valores son iguales 0 no. El
operador == devuelve verdadero si los dos valores son iguales, el
operador != devuelve verdadero si son diferentes. El resultado de la
‘comparacién es un valor booleano que indica si la igualdad o desigualdad
es verdadera o falsa.= Un operador de asignacién permite asignar un valor o el resultado de
una operacién a una variable: 115, b=.
Nimeros reales. Con los ntimeros reales se aplican los mismos operadores
que con los ntimeros enteros. Si se realizan operaciones unarias, aditivas 0
multiplicativas, el resultado es un nimero real. También se pueden aplicar
los operadores relacionales para comparar dos nimeros reales.
Booleanos. Los operadores que se aplican a los valores légicos son:
negacién, Y Idgico, O légico.
= La negacién (!) devuelve true si el operando es false.
m™ ELY logico (&&) devuelve false si uno de los operandos es false.
= E10 légico (||) devuelve true si uno de los operandos es true
Expresiones
Una expresién permite realizar operaciones entre valores utilizando distintos
operadores. Las expresiones son itiles para representar las formulas
mateméaticas que se utilizan para realizar célculos.
En Java se pueden definir expresiones tan complejas como sea necesario.
Por ejemplo, para convertir una temperatura de grados Fahrenheit a
Centigrados se utiliza la formula:
c= ((F- 32) * 5) /9
En este ejemplo C representa la temperatura en grados centigrados y F en
grados Fahrenheit. La férmula en Java, utilizando las variables
centigrados y fahrenheit de tipo double.
centigrados = ( (fahrenheit - 32.0) * 5.0)) / 9.07
Toda la expresién se evalua a un valor. El orden de los cdlculos depende del
orden de prioridad de los operadores: primero los operadores unarios,
después los multiplicativos, de izquierda a derecha, después los operadores
aditivos, de izquierda @ derecha, después los operadores de relacién y por
Lltimo los operadores de asignacién.Por ejemplo, la expresin x = -3 + 2* 4- 12/6 + Sse calcula en el orden
siguiente:
Primero se aplica e! operador unario (-) a 3 y se obtiene -3. A continuacién
se evaluan los operadores multiplicativos de izquierda a derecha. Se calcula
el producto de 2 * 4 y se obtiene 8, después se divide 12 / 6 y se obtiene 2.
Al finalizar estas operaciones la expresion queda x = -3 + 8 - 2 + 5. Por
Ultimo, se evaliian los operadores adi
obtiene 8.
os de izquierda @ derecha y se
Cuando se desea modificar el orden de prioridad de los operadores es
necesario utilizar paréntesis para indicar el orden de evaluacién. Por
ejemplo, al calcular el valor de y = -3 + 2 * (14 - 2) / 6 + Sse obtiene 6.
Expresiones aritmético-légicas
Una expresién aritmético-légica devuelve un valor Idgico verdadero o falso.
En este tipo de expresiones se utilizan operadores aritméticos, operadores
relacionales y de igualdad. Por ejemplo, una expresion ldgica puede ser:
(10 - 2) > (5 - 3)
En este ejemplo la expresion aritmético-légica es verdadera porque el lado
derecho de la expresién es mayor que el lado izquierdo.
En una expresién aritmético-ldgica se pueden combinar varias expresiones
con operadores ldgicos. La precedecencia de los operadores ldgicos es
menor que la de los operadores relacionales, por lo que primero se evaluan
las desigualdades y después los operadores légicos. El orden de prioridad de
los operadores légicos es el siguiente: primero la negacién, después el Y
légico y por ultimo el O Iégico. La prioridad de los operadores de asignacién
es la menor de todas.
Por ejemplo, la expresion 3 + 5 < 5*2|| 3 >8 &&7 > 6 - 2 se evalua en
el orden siguiente.Primero se evalian las expresiones aritméticas y se obtiene la expresién
légica 8 < 10 || 3 > 8 && 7 > 4. A continuacién se evaldan los operadores
relacionales y se obtiene true || false && true. Ahora se evalua el
operador Y ldgico con los operandos false && true y se obtiene false.
Por ultimo, se evalua el operador O légico con los operandos true || fallse
y se obtiene true, el valor final de la expresién.
Los operadores Iégicos && y || se evaltian por cortocircuito. Esto significa
que al evaluar a && b, si a es falso, no es necesario evaluar b porque la
expresion es falsa. De forma similar, al evaluar a || b, si a es verdadero, no
es necesario evaluar b porque la expresién es verdadera.
Conversién de tipos
Muchas veces es necesario realizar conversiones de tipos cuando se evalua
una expresién aritmética. Por ejemplo, si después de realizar el cdlculo de
conversion de grados Fahrenheit a Centigrados se quiere almacenar el
resultado en la vari
ble de tipo entero temperatura, es necesario hacer
una conversién de tipos. La formula en Java, utilizando las variables
centigrados y fahrenheit de tipo double.
centigzados = ((fahrenheit - 32.0) * 5.0)) / 9.0;
Antes de asignar el valor resultante a la variable temperatura, que
almacena un valor entero, es necesario convertir el valor de tipo double de
la variable centigrados a int.
int temperatura = (int) centigrados;
Las palabras reservadas de Java
En todos los lenguajes de programacién existen palabras con un significado
especial. Estas palabras son reservadas y no se pueden utilizar como
nombres de variables.abstract
assert
boolean
break
byte
case
catch
char
class
continue
default
do
double
else
enum
extends
false
final
finally
float
for
if
implements
import
instanceof
int
interface
long
native
new
null
package
private
protected
public
return
short
static
strictfp
super
switch
synchronized
this
throw
throws
transient
true
try
void
volatile
while
En realidad, las palabras false, null y true son literales. No son palabras
reservadas del lenguaje, pero no se pueden utilizar como identificadores.
También podría gustarte
EJERCICIO4
Aún no hay calificaciones
EJERCICIO4
114 páginas
Java 11
Aún no hay calificaciones
Java 11
38 páginas
Variables
Aún no hay calificaciones
Variables
9 páginas
Jhader
Aún no hay calificaciones
Jhader
10 páginas
Java - Egg
Aún no hay calificaciones
Java - Egg
258 páginas
OOB
Aún no hay calificaciones
OOB
50 páginas
Fundamentos
Aún no hay calificaciones
Fundamentos
50 páginas