0% encontró este documento útil (0 votos)
13 vistas45 páginas

0.1 Java Elementos Básicos

Este documento resume los aspectos básicos del lenguaje de programación Java. Java es un lenguaje orientado a objetos multiplataforma que se presentó en 1995 y sigue siendo uno de los lenguajes más usados, especialmente para aplicaciones web. El documento explica conceptos como variables, tipos de datos, expresiones, asignaciones, conversiones de tipos, estructuras de control como condicionales if/else, bucles while y for, y bloques.

Cargado por

Emanuel Heredia
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, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
13 vistas45 páginas

0.1 Java Elementos Básicos

Este documento resume los aspectos básicos del lenguaje de programación Java. Java es un lenguaje orientado a objetos multiplataforma que se presentó en 1995 y sigue siendo uno de los lenguajes más usados, especialmente para aplicaciones web. El documento explica conceptos como variables, tipos de datos, expresiones, asignaciones, conversiones de tipos, estructuras de control como condicionales if/else, bucles while y for, y bloques.

Cargado por

Emanuel Heredia
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, TXT o lee en línea desde Scribd
Está en la página 1/ 45

0.

1 Java
Aspectos Básicos
Qué es Java?
● Java es un lenguaje de programación presentado en 1995, basado en clases
y orientado a objetos.
● Uno de los objetivos de Java es ser multiplataforma, “write once, run
everywhere”. El código puede ejecutar en cualquier plataforma con Java
compatible sin recompilar.
● En 2019 sigue siendo uno de los lenguajes de programación más usados.
● Muy usado en aplicaciones cliente-servidor en aplicaciones web.
● No es un lenguaje totalmente orientado a objeto, tiene también tipos
elementales.
Variables y Constantes
[<modificador>]* <tipo> <identificador> [,<identificador>];

int j;

int i, I, j101;

static char fin = ‘1’;

final boolean eureka = true;

En la declaración se establece el nombre, tipo alcance y se determina si la


variable es constante o no.
Tipos de Datos y Tipos de Elementales
Factorizar Propiedades. Todas las variables de un tipo comparten una misma
representación, toman valores de un mismo conjunto y pueden participar de las
mismas operaciones.

Efectuar Controles. El lenguaje establece restricciones que aseguran la


consistencia entre los operadores provistos y los operandos. Estas restricciones
van a ser controladas por el compilador o en ejecución.

Administrar la Memoria. El compilador decide cuánto espacio de


almacenamiento va a requerir cada dato en ejecución, de acuerdo a su tipo.
Tipos de Datos y Tipos de Elementales

fuente: https://en.wikibooks.org/wiki/Java_Programming/Primitive_Types
Expresiones
Operadores relacionales Operadores booleanos

igual == Conjunción &&

distinto != Disyunción ||

menor < Negación !

menor o <=
igual Evaluación
Completa vs En cortocircuito
mayor >

mayor o >= Conversión


igual byte → short → int → long → float →
double
Reglas de Precedencia y Asociatividad
++, --, !, - (unario), + (unario), type-cast

*, /, %

+, -

<, >, <=, >=

==, !=

&&

||

=, +=, -=, *=, /=, %=


Asignación
<ident> = <expresion>;

<tipo> <ident> = <exp> [, <ident> = <exp>];

boolean estado;

estado = true;

int a = 3, b = 4;

Cuando la expresión que aparece a la derecha de una asignación no coincide con el tipo de la variable
que está a la izquierda puede producirse una conversión automática o un error de compilación.

El error puede salvarse mediante una operación de casting.


Asignación
<ident> = <expresion>;

<tipo> <ident> = <exp> [, <ident> = <exp>];


Declaración
boolean estado;
Asignación
estado = true;
Declaración y
int a = 3, b = 4; Asignación

Cuando la expresión que aparece a la derecha de una asignación no coincide con el tipo de la variable
que está a la izquierda puede producirse una conversión automática o un error de compilación.

El error puede salvarse mediante una operación de casting.


Conversión Automática de Tipos
Si al hacer la conversión de un tipo a otro se dan las 2 siguientes premisas:

● Los dos son tipos compatibles.


● El tipo de la variable destino es de un rango mayor al tipo de la variable que
se va a convertir.

Entonces, la conversión entre tipos es automática.


Conversión Automática de Tipos
Si al hacer la conversión de un tipo a otro se dan las 2 siguientes premisas:

● Los dos son tipos compatibles.


● El tipo de la variable destino es de un rango mayor al tipo de la variable que
se va a convertir.

Entonces, la conversión entre tipos es automática.

int a = 1;

long b = a;
Casting
Cuando el tipo a convertir está fuera del rango del tipo al que se quiere convertir
entonces no es posible la conversión automática.

El programador se ve obligado a realizar una conversión explícita, que se


denomina casting.

La sintaxis es:
destino = (tipo_destino) valor;

Puede haber pérdida de precisión o incluso se pueden obtener valores erróneos.


Casting
Cuando el tipo a convertir está fuera del rango del tipo al que se quiere convertir
entonces no es posible la conversión automática.

El programador se ve obligado a realizar una conversión explícita, que se


denomina casting.

La sintaxis es:
destino = (tipo_destino) valor;

Puede haber pérdida de precisión o incluso se pueden obtener valores erróneos.

int p = 37;
short j = (short) p;
Casting
Cuando el tipo a convertir está fuera del rango del tipo al que se quiere convertir
entonces no es posible la conversión automática.

El programador se ve obligado a realizar una conversión explícita, que se


denomina casting.

La sintaxis es:
destino = (tipo_destino) valor;

Puede haber pérdida de precisión o incluso se pueden obtener valores erróneos.

int p = 37; int a = 40000; j == -25536


short j = (short) p; short j = (short) a;
Estructuras de Control en Java: Instrucciones
< instruccion > ::= < declaración de variable > |
< expresion > ; |
< bloque > |
< instruccion if > |
< instruccion while > |
< instruccion for > |
< instruccion switch > |
< instruccion try > |
< instruccion return > |
< break > | < continue > |
Estructuras de Control en Java: Bloques
< bloque> ::= { [< instruccion > ]* }
{
promedio = total / n ;
System.out.print("El promedio es ");
System.out.println(promedio); }
{
int temp;
temp = x;
x = y;
y = temp;
}
Estructuras de Control en Java: Bloques
Un bloque define un nuevo ambiente de referenciamiento.

Las variables declaradas dentro de un bloque son locales y no son visibles fuera
de él.

Un mismo nombre no puede ligarse a dos variables en el mismo bloque ni en


bloques anidados.

Una variable puede ser referenciada a partir de la instrucción que sigue a su


declaración.

Adoptaremos la convención de declarar las variables de un bloque al principio e


inicializarlas explícitamente.
Estructuras de Control en Java: Condicional (if)
< instruccion if > ::= if (< expresion booleana >)

< instruccion >

[else

< instrucción >]


Estructuras de Control en Java: Condicional (if)

if (x > y) if (x>y){ if (x>y){


max = x; max=x; int temp;
else min = y;} temp = x;
max = y; else{ x = y;
max = y; y = temp;
min = x; }
}
Estructuras de Control en Java: Condicional (if)
if (x > y) if (nota>9)
if (x > z) estado = ‘A’;
max = x; else if (nota>7)
else estado = ‘B’;
max = z; else if (nota >4)
else estado = ‘C’;
if (y > z) else if (nota < 4)
max = y; estado = ‘D’;
else
max = z;
Estructuras de Control en Java: Condicional (if)
estado = ́B ́; estado = ́B ́;
if (promedio > 7) if (promedio > 7){
if (inasistencias<3) if (inasistencias<3)
estado = ‘A’; estado = ‘A’; }
else else
estado = ‘C’; estado = ‘C’;
Estructuras de Control en Java: Condicional (if)
estado = ́B ́; estado = ́B ́;
if (promedio > 7){ if (promedio > 7){
if (inasistencias<3) if (inasistencias<3)
estado = ‘A’; estado = ‘A’; }
else else
estado = ‘C’; estado = ‘C’;
}
Estructuras de Control en Java: Condicional (switch)
<instruccion switch>::=

switch (<expression>) {

[ case <constante> : <instruccion> ]*

default: <instruccion>

}
Estructuras de Control en Java: Condicional (switch)
switch ( nota ) {
case 10:
case 9:
estado = ‘A’;
break;
case 8:
case 7:
estado = ‘B’;
break;
case 6:
case 5:
estado = ‘C’ ;
break;
default: estado = ́D ́; }
Estructuras de Control en Java: Iteración (while)
< instruccion while > ::=
while (<expresion booleana>)
<instrucción>

< instruccion do while> ::=


do
<instrucción>
while (<expresion booleana>)
Estructuras de Control en Java: Iteración (while)
int numero;
int digitos = 0;
System.out.println (“Ingrese el numero”);
numero = ES.leerEntero ();
while ( numero > 0 ) {
numero /=10;
digitos++;
}
System.out.println(digitos);
Estructuras de Control en Java: Iteración (while)
int numero;
int digitos = 0;
System.out.println (“Ingrese el numero”);
numero = ES.leerEntero ();
do {
numero /=10;
digitos++;
} while ( número > 0 );
System.out.println(digitos);
Estructuras de Control en Java: Iteración (for)
< instruccion for > ::=
for ([<asignacion>]; [<expresion>] ; [<expresion>])
<instrucción>
Estructuras de Control en Java: Iteración (for)
< instruccion for > ::=
for ([<asignacion>]; [<expresion>] ; [<expresion>])
<instrucción>

int n;
for ( n = 1 ; n <= 10 ; n++ )
System.out.println( n*n );

for ( int n = 1 ; n <= 10 ; n++ )


System.out.println( n*n );
Estructuras de Control en Java: Iteración (for)
sum = 0 ;
for ( n = 1 ; n <= 10 ; n++ )
sum = sum + n ;
for ( n = 1, sum = 0 ; n <= 10 ; n++ )
sum = sum + n ;
for (n=1,sum=0; n<=10; sum=sum+n,n++);
for ( n = 1, sum = 0 ; sum <= 100 ; n++ )
sum = sum + n ;
for ( int n = 1, sum = 0 ;sum <= 100 ; n++ )
sum = sum + n ;
Estructura de un programa en Java
La unidad básica de programación en Java es la clase.

Un programa en Java está constituido por una colección de clases .

La implementación de una clase consiste en definir sus miembros:

•Atributos: variables de instancia y de clase

•Servicios: constructores y métodos


Estructura de un programa en Java: Métodos
Sintaxis
[ < Modificador > ]* < Tipo del Resultado >

< Identificador > ( [< Parámetros Formales > ]* )

{ < bloque > }


Estructura de un programa en Java: Métodos
Sintaxis
[ < Modificador > ]* < Tipo del Resultado >

< Identificador > ( [< Parámetros Formales > ]* )

{ < bloque > }

public static void main(String [] args)


{ ... }
Estructura de un programa en Java: Métodos
Para que un programa en Java pueda ejecutarse es necesario definir una clase
que incluya un método llamado main().
definición de una
class Hello { clase

public static void main(String [] args){


Definición de un
método.
System.out.println(“Hello World”);

}
Estructura de un programa en Java: Métodos
•La primera línea define una clase llamada Hello.

•La segunda clase define el método main, asociado a los modificadores public y
static. Es importante que no omitan ni alteren el encabezamiento del main.

•La palabra void indica que el método main no retorna ningún valor.

•La forma (String args[]) es la definición de los argumentos que recibe el


método main.

•La instrucción System.out.println muestra un literal en pantalla.


BlueJ
Procesador Número
ProcesadorNumero
sumaDigs ( n:entero ) : entero
estaDig ( n:entero, d:entero ) : booleano
Procesador Número
ProcesadorNumero
sumaDigs ( n:entero ) : entero
estaDig ( n:entero, d:entero ) : booleano

class ProcesadorNumero {
public static int sumaDig(int n ){
// Retorna la suma de los dígitos del número n

}
public static boolean estaDig (int n, int d ){
//Retorna true si y solo si d es un dígito del número n

}
}
Procesador Número
ProcesadorNumero
sumaDigs ( n:entero ) : entero Clases como unidad
estaDig ( n:entero, d:entero ) : booleano de programación

Modificadores
class ProcesadorNumero {
de visibilidad
public static int sumaDig(int n ){
// Retorna la suma de los dígitos del número n
Comentarios
… de una sola
} línea.
public static boolean estaDig (int n, int d ){
//Retorna true si y solo si d es un dígito del número n

}
}
Procesador Número
class ProcesadorNumero{

public static int sumaDig(int n){


//Retorna la suma de los dígitos del número n
int s=0;
while (n>0) {
s = s + n % 10;
n = n/10;
}
return s;
}
...
}
Procesador Número Clases como unidad
de programación
class ProcesadorNumero{

public static int sumaDig(int n){


//Retorna la suma de los dígitos del número n
Tipo Elemental Parámetros y
int s=0; Variables
int
while (n>0) { Locales
s = s + n % 10; Instrucción while
n = n/10;
}
La instrucción
return s;
de return
} Asignaciones y expresiones,
operadores y operandos
...
}
Procesador Número - Tester
Para que un programa en Java pueda ejecutarse es necesario que una clase
incluya un método llamado main().

class Tester{

public static void main (String args[]) {

int s = sumaDig(25036);

System.out.println(“La suma es “+s);

}
Procesador Número
public class ProcesadorNumero{

public static boolean estaDig(int n,int d ){
/* Retorna true si y solo si d
es un dígito del número n */
boolean esta = false;
while (n>0) && !esta {
if (d == n % 10)
esta = true;
n = n/10;
}
return esta;
}
}
Procesador Número
public class ProcesadorNumero{

public static boolean estaDig(int n,int d ){
/* Retorna true si y solo si d Comentario
Tipo es un dígito del número n */ de múltiples
elemental boolean esta = false; líneas.
boolean
while (n>0) && !esta { Operadores
if (d == n % 10) relacionales y
Condicional if lógicos.
esta = true;
n = n/10;
}
return esta;
}
}
¿Preguntas?

También podría gustarte