La pandemia de COVID-19 ha tenido un impacto significativo en la economía mundial. Muchos países experimentaron fuertes caídas en el PIB y aumentos en el desempleo debido a los cierres generalizados y las restricciones a los viajes. Aunque las vacunas han permitido la reapertura de muchas economías, los efectos a largo plazo de la pandemia en sectores como el turismo y los viajes aún no están claros.
1. Integrantes:
Canta Cuipal Joel
Cotrina Lopez Leydi
Carrera : Ingeniería de Sistemas y Telemáticas
Ciclo: V-C
Curso: Laboratorio de Programación II.
Tema: Java
2. JAVA
Java es un lenguaje de programación orientado a
objetos que se incorporó al ámbito de la informática
en los años noventa. La idea de Java es que pueda
realizarse programas con la posibilidad de ejecutarse
en cualquier contexto, en cualquier ambiente, siendo
así su portabilidad uno de sus principales logros. Fue
desarrollado por Sun Microsystems, posteriormente
adquirido por Oracle.
3. CARACTERÍSTICAS DE JAVA
Las características principales que nos ofrece Java son:
Lenguaje Simple: Se lo conoce como lenguaje simple
porque viene de la misma estructura de c y c++; ya que c++
fue un referente para la creación de java por eso utiliza
determinadas características de c++ y se han eliminado
otras.
Orientado a Objeto: Toda la programación en java en su
mayoría está orientada a objeto, ya que al estar agrupados
en estructuras en capsuladas es más fácil su manipulación.
Distribuido: Permite abrir sockets, establecer y aceptar
conexiones con los servidores o clientes remotos; facilita la
creación de aplicaciones distribuidas ya que proporciona una
colección de clases para aplicaciones en red.
4. Robusto: Es altamente fiable en comparación con c, se han
eliminado muchas características con la aritmética de
punteros, proporciona numerosas comprobaciones en
compilación y en tiempo de ejecución.
Seguro: La seguridad es una característica muy importante
en java ya que se han implementado barreras de seguridad
el lenguaje y en el sistema de ejecución de tiempo real.
Indiferente a la arquitectura: Java es compatible con los más
variados entornos de red, cualesquiera sean estos desde
Windows 95, Unix a Windows Nt y Mac, para poder trabajar
con diferentes sistemas operativos.
Portable: Por ser indiferente a la arquitectura sobre la cual
está trabajando, esto hace que su portabilidad sea muy
eficiente, sus programas son iguales en cualquiera de las
plataformas, ya que java especifica tamaños básicos, esto se
conoce como la máquina virtual de java.
5. Interpretado y compilado a la vez: Java puede ser compilado e
interpretado en tiempo real, ya que cuando se construye el código
fuente este se transforma en una especie de código de máquina.
Multihebra o Multihilos: Java tiene una facilidad de cumplir varias
funciones al mismo tiempo, gracias a su función de multahilos ya que
cada hilo que el programa tenga se ejecutaran en tiempo real muchas
funciones al mismo tiempo.
Dinámico: El lenguaje javo es muy dinámico en la fase de enlazado, sus
clases solamente actuaran en medida en que sean requeridas o
necesitadas con esto permitirá que los enlaces se puedan incluir incluso
desde fuentes muy variadas o desde la red.
Produce Applets: En java se pueden crear aplicaciones independientes
y applets independientes porque se pueden comportar como cualquier
programa escrito en cualquier lenguaje.
Alto rendimiento: Java es considerado de alto rendimiento por ser
tan veloz en el momento de correr los programas y por ahorrase
líneas de código.
6. TIPOS DE DATOS EN JAVA
1. Datos de tipo básico o primitivo.
En Java toda la información que maneja
un programa está representada por dos
tipos principales de datos:
Los tipos de datos básicos o
primitivos no son objetos y se pueden
utilizar directamente en un programa
sin necesidad de crear objetos de
este tipo. La biblioteca Java
proporciona clases asociadas a estos
tipos que proporcionan métodos que
facilitan su manejo.
Tipo
de
dato
Representaci
ón
Tamaño
(Bytes)
Rango de Valores Valor por
defecto
Clase
Asociada
byte Numérico Entero
con signo
1 -128 a 127 0 Byte
short Numérico Entero
con signo
2 -32768 a 32767 0 Short
int Numérico
con signo
4 -2147483648 a 2147483647 0 Integer
long Numérico Entero
con signo
8 -9223372036854775808 a
9223372036854775807
0 Long
float Numérico
en Coma flotante
de precisión
simple Norma
754
4 3.4x10-38 a 3.4x1038 0.0 Float
double Numérico en Coma
flotante de precisión
doble Norma IEEE
754
8 1.8x10-308 a 1.8x10308 0.0 Double
char Carácter 2 u0000 a uFFFF u0000 Character
boolean Dato lógico - true ó false False Boolean
void - - - - Void
7. DATOS NUMÉRICOS ENTEROS
En Java los representan los tipos: byte,
short, int, long.
El tipo de dato numérico entero es un
subconjunto finito de los números
enteros del mundo real. Pueden ser
positivos o negativos.
Ejemplo de declaración de variables
enteras:
int a;
byte n1, n2;
short x;
8. DATOS NUMÉRICOS REALES
En Java los representan los tipos:
float, double.
El tipo de dato numérico real es un
subconjunto finito de los números
reales. Siempre llevan un punto
decimal y también pueden ser
positivos o negativos. Los números
reales tienen una parte entera y una
parte decimal.
Ejemplo de declaración de variables reales:
float peso;
double longitud;
float altura = 2.5F;
double area = 1.7E4; // equivale a 1.7 * 104
double z = .123
9. DATOS DE TIPO CARÁCTER
En Java se representa con el tipo char.
un dato de tipo char contiene un número entero dentro del
rango (u0000 a uFFFF (números desde 0 hasta 65535)
en Unicode.) que representa un carácter.
En Java se utiliza el código Unicode para la representación de
caracteres. Los 127 primeros caracteres de Unicode
corresponden al código ASCII. El Código ASCII (American
Standard Code for Information Interchange o Código Estándar
Americano para el Intercambio de Información) asigna valores
numéricos a las letras, números, signos de puntuación y
algunos otros caracteres especiales.
ASCII incluye 256 códigos divididos en dos conjuntos, estándar
y extendido, de 128 cada uno. El conjunto ASCII básico, o
estándar, utiliza 7 bits para cada código, lo que da como
resultado 128 códigos de caracteres desde 0 hasta 127.
El conjunto ASCII extendido utiliza 8 bits para cada código,
dando como resultado 128 códigos adicionales, numerados
desde el 128 hasta el 255.
Ejemplo de declaración de variables de tipo
carácter:
char car;
char letra1 = 'z';
char letra = 'u0061'; //código
Unicode
10. DATOS DE TIPO LÓGICO
Se representan con el tipo boolean. Los datos de
este tipo sólo pueden contener dos valores: true
(verdadero) ó false (falso).
Ejemplo de declaración de variables lógicas:
boolean primero;
boolean par = false;
11. OPERADORES JAVA ARITMÉTICOS
Los operadores aritméticos en java son:
+ Suma. Los operandos pueden ser enteros o reales
- Resta. Los operandos pueden ser enteros o reales
* Multiplicación. Los operandos pueden ser enteros o
reales
/ División. Los operandos pueden ser enteros o reales. Si
ambos son enteros el resultado es entero. En cualquier
otro caso el resultado es real.
% Resto de la división. Los operandos pueden ser de
tipo entero o real.
Ejemplo de operaciones aritméticas:
int a = 10, b = 3;
double v1 = 12.5, v2 = 2.0;
char c1='P', c2='T';
Operación Valor Operación Valor Operación Valor
a+b 13 v1+v2 14.5 c1 80
a-b 7 v1-v2 10.5 c1 + c2 164
a*b 30 v1*v2 25.0 c1 + c2 + 5 169
a/b 3 v1/v2 6.25 c1 + c2 + ‘5’ 217
a%b 1 v1%v2 0.5
12. Los tipos short y byte se convierten automáticamente a int.
Por ejemplo:
int i = 7;
double f = 5.5;
char c = 'w';
Operación Valor Tipo
i + f 12.5 double
i + c 126 int
i + c – ‘0’ 78 int
(i + c) – (2 * f / 5) 123.8 double
13. OPERADORES JAVA RELACIONALES
Los operadores relacionales comparan dos operandos y
dan como resultado de la comparación verdadero ó
falso.
Los operadores relacionales en java son:
< Menor que
> Mayor que
<= Menor o igual
>= Mayor o igual
!= Distinto
== Igual
Los operandos tienen que ser de tipo primitivo.
Por ejemplo: int a = 7, b = 9, c = 7;
Operación Resultado
a==b false
a >=c true
b < c false
a != c false
14. OPERADORES JAVA LÓGICOS
Los operadores lógicos se utilizan con operandos de tipo
boolean. Se utilizan para construir expresiones lógicas, cuyo
resultado es de tipo true o false.
Los operadores lógicos en Java son:
&& AND. El resultado es verdadero si los dos operandos
son verdaderos. El resultado es falso en caso contrario. Si el
primer operando es falso no se evalúa el segundo, ya que el
resultado será falso.
||OR. El resultado es falso si los dos operandos son falsos. Si
uno es verdadero el resultado es verdadero. Si el primer
operando es verdadero no se evalúa el segundo.
! NOT. Se aplica sobre un solo operando. Cambia el valor
del operando de verdadero a falso y viceversa.
Las definiciones de las operaciones OR, AND y NOT se
recogen en unas tablas conocidas como tablas de verdad.
A B A OR B
F F F
F V V
V F V
V V V
A B A AND B
F F F
F V F
V F F
V V V
A NOT A
F V
V F
15. OPERADORES JAVA UNITARIOS.
Los operadores unitarios en java son:
– + signos negativo y positivo
++ -- incremento y decremento
~ complemento a 1
! NOT. Negación
Estos operadores afectan a un solo operando.
El operador ++ (operador incremento)
incrementa en 1 el valor de la variable.
Ejemplo de operador incremento:
int i = 1;
i++; // Esta instrucción incrementa en 1
la variable i.
// Es lo mismo que hacer i = i + 1; i toma
el valor 2
El operador –- (operador decremento)
decrementa en 1 el valor de la variable.
Ejemplo de operador decremento:
int i = 1;
i--; // decrementa en 1 la variable i.
// Es lo mismo que hacer i = i - 1; i toma el
valor 0
16. OPERADORES JAVA A NIVEL DE BITS
Realizan la manipulación de los bits de los datos con los que
operan.
Los datos deben ser de tipo entero.
Los operadores a nivel de bits en java son:
& and a nivel de bits
| or a nivel de bits
^ xor a nivel de bits
<< desplazamiento a la izquierda, rellenando con ceros a la
derecha
>> desplazamiento a la derecha, rellenando con el bit de signo
por la izquierda
>>> desplazamiento a la derecha rellenando con ceros por la
izquierda
17. OPERADORES JAVA DE ASIGNACIÓN.
Se utilizan para asignar el valor de una expresión a una variable. Los
operandos deben ser de tipo primitivo.
Los operadores de asignación en java son:
= Asignación
+= Suma y asignación
– = Resta y asignación
*= Producto y asignación
/= División y asignación
%= Resto de la división entera y asignación
<<= Desplazamiento a la izquierda y asignación
>>= Desplazamiento a la derecha y asignación
>>>= Desplazamiento a la derecha y asignación rellenando con ceros
&= and sobre bits y asignación
|= or sobre bits y asignación
^= xor sobre bits y asignación
18. Ejemplo de asignaciones en
Java:
a += 3; equivale a a = a + 3;
a *= 3; equivale a a = a * 3;
En la siguiente tabla vemos más ejemplos de asignaciones:
int i = 5, j = 7, x = 2, y = 2, z = 2;
float f = 5.5F, g = -3.25F;
Expresión Expresión equivalente Valor final
i += 5 i = i + 5 10
f –= g f = f – g 8.75
j *= (i – 3) j = j * (i – 3) 14
f /= 3 f = f / 3 1.833333
i %= (j - 2) i = i % (j – 2) 0
x *= -2 * (y + z) / 3 x = x * (-2 * (y + z) / 3) -4
19. OPERADOR JAVA CONDICIONAL
Se puede utilizar en sustitución de la sentencia de
control if-else, pero hace las instrucciones menos
claras.
El operador condicional java se forman con los
caracteres ? y :
Se utiliza de la forma siguiente:
expresión1 ? expresión2 : expresión3
Si expresión1 es cierta entonces se evalúa expresión2
y éste será el valor de la expresión condicional. Si
expresión1 es falsa, se evalúa expresión3 y éste será el
valor de la expresión condicional.
Ejemplo de operador condicional:
int i = 10, j;
j = (i < 0) ? 0 : 100;
Esta expresión asigna a j el valor 100. Su
significado es: si el valor de i es menor
que 0 asigna a j el valor 0, sino asigna a j
el valor 100. Como i vale 10, a j se le
asigna 100.
La instrucción anterior es equivalente a
escribir:
if(i < 0)
j = 0;
else
j = 100;
20. PRIORIDAD Y ORDEN DE EVALUACIÓN DE
LOS OPERADORES EN JAVA
La siguiente tabla muestra todos los
operadores Java ordenados de mayor a
menor prioridad. La primera línea de la
tabla contiene los operadores de mayor
prioridad y la última los de menor
prioridad. Los operadores que aparecen
en la misma línea tienen la misma
prioridad.
Operador Asociatividad
() [] . Izquierda a derecha
++ -- ~ ! Derecha a izquierda
New Derecha a izquierda
* / % Izquierda a derecha
+ - Izquierda a derecha
>> >>> << Izquierda a derecha
> >= < <= Izquierda a derecha
== != Izquierda a derecha
& Izquierda a derecha
^ Izquierda a derecha
| Izquierda a derecha
&& Izquierda a derecha
|| Izquierda a derecha
?: Derecha a izquierda
= += -= *= ... Derecha a izquierda