JAVA
Java es un lenguaje de programación
orientado a objetos, multiplataforma y de propósito general, diseñado para
escribir código una vez y ejecutarlo en cualquier dispositivo compatible con la
Máquina Virtual de Java (JVM), bajo el principio "write once, run
anywhere".
MAQUINA VIRTUAL DE JAVA
La Máquina Virtual de Java (JVM) es un
entorno de ejecución abstracto que permite correr programas Java en cualquier
dispositivo o sistema operativo compatible, sin necesidad de recompilar el
código.
Funcionamiento Principal
La JVM recibe el bytecode generado por el
compilador de Java (archivo .class) y lo interpreta o compila just-in-time
(JIT) a código máquina nativo específico del hardware subyacente. Actúa como
capa de abstracción entre el código Java y el sistema operativo, gestionando
memoria, seguridad y ejecución para cumplir el principio "write once, run
anywhere".
Componentes Clave
Class Loader: Carga archivos .class,
verifica su validez y los prepara para ejecución.
Runtime Data Areas: Incluye Heap (memoria
para objetos), Stack (variables locales por hilo), Method Area (datos de
clases) y más.
Execution Engine: Interpreta o compila
bytecode con JIT, y maneja el recolector de basura para liberar memoria
automáticamente.
Ventajas
Proporcona portabilidad multiplataforma,
seguridad (sandbox contra código malicioso) y optimizaciones automáticas como
garbage collection. Cada plataforma tiene su propia JVM (Windows, Linux,
Android), asegurando compatibilidad universal.
TIPOS
DE DATOS
Java cuenta con 8 tipos de datos primitivos
y una clase importante como String para manejar texto. Cada tipo tiene un rango
específico y se usa para operaciones eficientes en memoria.
Tipos de Datos Primitivos
byte: Entero de 8 bits con rango -128 a
127. Ideal para valores pequeños como contadores. Ejemplo: byte edad = 25;.
short: Entero de 16 bits con rango -32,768
a 32,767. Útil para números medianos. Ejemplo: short temperatura = 300;.
int: Entero de 32 bits con rango -2.1 mil
millones a 2.1 mil millones. El más común para enteros. Ejemplo: int salario =
50000;.
long: Entero de 64 bits para números muy
grandes, requiere 'L' al final. Rango: -9 quintillones a 9 quintillones.
Ejemplo: long poblacion = 8000000000L;.
float: Decimal de 32 bits (precisión
simple), usa 'F'. Ejemplo: float precio = 19.99F;.
double: Decimal de 64 bits (alta
precisión), el predeterminado para flotantes. Ejemplo: double distancia =
3.14159;.
boolean: Solo true o false para condiciones
lógicas. Ejemplo: boolean aprobado = true;.
char: Carácter Unicode de 16 bits, entre
comillas simples. Ejemplo: char inicial = 'A';.
Clase String
String es una clase del paquete java.lang
(no primitivo) para cadenas de texto inmutables. Se declara entre comillas
dobles y permite concatenación con +. Ejemplo: String nombre = "Juan
Pérez"; System.out.println("Hola " + nombre);.
BUCLES
Estructura If
La sentencia if evalúa una condición
booleana y ejecuta un bloque de código solo si es verdadera, opcionalmente con
else para el caso contrario. Su sintaxis es if (condición) { código; } else {
código alternativo; }, permitiendo decisiones condicionales simples o anidadas.
EJEMPLO
int edad = 18;
if (edad >= 18) {
System.out.println("Eres mayor de edad"); // Se ejecuta si condición es true
} else {
System.out.println("Eres menor de edad");
}
Bucle While
El bucle while repite un bloque de código
mientras una condición sea verdadera, evaluándola antes de cada iteración.
Sintaxis: while (condición) { código; }, ideal para repeticiones con número
desconocido de veces, pero requiere cuidado para evitar bucles infinitos.
EJEMPLO WHILE:
int contador = 1;
while (contador <= 5) {
System.out.println("Número: " + contador); // Imprime 1,2,3,4,5
contador++; // Incrementa para
evitar bucle infinito
}
Biblioteca Scanner
Scanner, en el paquete java.util, facilita
la lectura de entrada del usuario desde consola u otras fuentes. Se importa con
import java.util.Scanner; y se usa como Scanner sc = new Scanner(System.in);
seguido de métodos como nextInt(), nextDouble() o nextLine() para capturar
datos.
EJEMPLO
package
javaapplication1;
import
java.util.Scanner;
public
class JavaApplication1 {
/**
* @param the command line arguments
*/
public static void main(String[] args) {
Scanner teclado = new Scanner(System.in);
int x,y,z;
x=teclado.nextInt();
y=teclado.nextInt();
z=x+y;
/**int x=5;
int y=7;
int z;
z=x+y;
*/
System.out.println(z);
}
}
Math proporciona métodos estáticos para
operaciones matemáticas comunes, como pow() para potencias, sqrt() para raíces
cuadradas, sin() y cos() para trigonométricas, además de constantes como PI y
E. Se accede directamente como Math.max(5, 3) sin instanciar.
package calculos;
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
double numero =
-10.5;
double raizCuadrada = Math.sqrt(16); // Se usa directamente
double valorAbsoluto = Math.abs(numero); // Se usa directamente
System.out.println("Raíz cuadrada de 16: " + raizCuadrada); //
Salida: 4.0
System.out.println("Valor absoluto de " + numero + ":
" + valorAbsoluto); // Salida: 10.// TODO code application logic here
}
}
No hay comentarios.:
Publicar un comentario