Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porAsunción Fidalgo Figueroa Modificado hace 9 años
1
INTRODUCCIÓN AL LENGUAJE JAVA 1 M.C Alejandro Castellanos Lopez1
2
¿Qué es Java? Es un lenguaje de programación orientado a objetos. Creado en 1991 por Sun Microsystems (James Gosling) para dispositivos electrónicos: calculadoras, microondas y la televisión El lenguaje en sí mismo toma mucha de su sintaxis de C y C++, pero tiene un modelo de objetos más simple y elimina herramientas de bajo nivel. Es independiente de la plataforma Posee un sistema de administración de memoria automático. M.C Alejandro Castellanos Lopez2
3
Un poco de historia Fue realizado por un equipo de 13 personas, dirigidas por James Gosling. Java se creó originalmente como una herramienta de programación para un proyecto set-top-box conocido como *7. M.C Alejandro Castellanos Lopez3
4
Java Development Kit (JDK) El JDK consiste de lo siguiente: – El Java development tools, incluyendo el compilador, debugger y el intérprete Java. – Las Java class libraries organizadas como una colección de paquetes. – Un número importante de programas de demostración. – Varias herramientas de soporte y componentes, incluyendo el código fuente de las clases en la biblioteca. URL: java.sun.com/javase/downloads M.C Alejandro Castellanos Lopez4
5
Ambientes de desarrollo Java (IDEs) Un IDE (del inglés Integrated Development Enviroment). Es un ambiente que integra un conjunto de herramientas (editor con prestaciones especiales, compilador, administración de proyectos, debugger,etc) que permiten realizar todo el proceso de desarrollo dentro del mismo. Si bien es posible escribir nuestros programas java en cualquier editor de texto y compilarlos desde una consola con javac, es mas cómodo y recomendable trabajar desde un IDE. M.C Alejandro Castellanos Lopez5
6
¿Porqué Java? El lenguaje se denominó inicialmente “Oak”. Luego pasó a denominarse “Green” tras descubrir que Oak era ya una marca comercial registrada. El término “JAVA” fue acuñado en una cafetería frecuentada por algunos de los miembros del equipo. No está claro si es un acrónimo o no, algunas hipotesis indican que podría tratarse de las iniciales de sus creadores: James Gosling, Arthur Van Hoff, y Andy Bechtolsheim. Otras abogan por “Just Another Vague Acronym”. La hipótesis que más fuerza tiene es la que Java debe su nombre a un tipo de café disponible en la cafetería. M.C Alejandro Castellanos Lopez6
7
Características de Java
8
Características de Java I Lenguaje de fácil uso orientado a objetos Lenguaje compilado e interpretado Facilita un entorno interpretado: – Velocidad de desarrollo – Portabilidad del código Ejecución multitareas Cambios dinámicos en tiempo de ejecución Seguridad del código. M.C Alejandro Castellanos Lopez8
9
La máquina Virtual Java - JVM (I) Es una máquina hipotética que emula por software una máquina real. Es definida por una especificación. – Conjunto de instrucciones de máquina (C.O.) + Operandos – Pila – Memoria –... El compilador genera bytecodes (instrucciones de código maquina para la JVM) El interprete tarduce y ejecuta los bytecodes para cada máquina específica. M.C Alejandro Castellanos Lopez9
10
La máquina Virtual Java (II) Código fuente Compilador Java Byte-codes Win32 JVM Código máquina Win32 Código máquina Win32 Macintosh JVM UNIX JVM Código máquina Macintosh Código máquina Macintosh Código máquina UNIX Código máquina UNIX M.C Alejandro Castellanos Lopez10
11
.java,.class, JVM??? En Java el código fuente se escribe en un archivo de texto plano con extensión.java. Luego, el código es compilado a archivos.class. Un archivo.class no contiene código nativo a un tipo de procesador, en cambio contiene bytecodes. Finalmente, la aplicación es interpretada por la maquina virtual de Java, transformando los bytecodes en código nativo en tiempo de ejecución. M.C Alejandro Castellanos Lopez11
12
Bytecode El bytecode es lenguaje nativo de cualquier implementación de la maquina virtual de Java. De esta forma se logra que un programa Java corra en cualquier plataforma que disponga de una JVM. M.C Alejandro Castellanos Lopez12
13
Compilador e intérprete de Java (I) El compilador analiza la sintaxis del código fuente (con extensión.java). Si no hay errores, genera bytecodes > javac.java El intérprete es la Máquina Virtual de Java que ejecuta los bytecodes (*.class) creados por el compilador. > java (sin extensión) > java arg1 arg2 … M.C Alejandro Castellanos Lopez13
14
Compilador e intérprete de Java (II) HelloWorld.java javac HelloWorld.java java HelloWorld HelloWorld.class compilar ejcutar bytecode Codigo fuente M.C Alejandro Castellanos Lopez14
15
Caracteristicas del lenguaje Sensible a mayúsculas/misnúsculas Comentarios Lenguaje de formato libre Identificadores Palabras reservadas Variables y constantes Convenciones de nomenclatura Tiene reglas sobre los tipos de datos M.C Alejandro Castellanos Lopez15
16
Comentarios // comentario Los caracteres desde // hasta el final de la línea son ignorados. /* comentario */ Los caracteres entre /* y */ son ignorados /** comentario */ Los caracteres entre /** y */son ignorados y se incluyen en la generación autómatica de la documentación. M.C Alejandro Castellanos Lopez16
17
Lenguaje de formato libre La disposición de los elementos dentro del código es libre Instrucciones: línea simple de código terminada en ; Bloque de código: Conjunto de sentencias agrupadas entre llaves. { X = x + 1; Y = y + 1; } Java permite espacios en blanco entre elementos del código X1 = y * delta; X2 = (y-1) * delta; M.C Alejandro Castellanos Lopez17
18
Palabras Reservadas Palabras con un significado especial para el compilador Ejemplos: – Nombres de tipos básicos: boolean, char, double, int, … – Indicadores de controls: do, if, else, for, while, … – Class, interface, extends, implements – package, import – this, super – Modificadores de acceso: public, private, protected – Constantes: true, false, null – Etc… M.C Alejandro Castellanos Lopez18
19
Variables y Constantes Variable: Zona de memoria cuyos valores van a cambiar durante la ejecucuión. Declaración: – ; –,,..., ; – = ; M.C Alejandro Castellanos Lopez19
20
Variables y Constantes Ejemplos de declaración de variables: – int x,y,z; – int x = 9; – boolean terminar = false; – Cliente c1 = new Cliente(); Constantes: Zona de memoria cuyos valores no cambian Declaración: – final = ; Ejemplo: final double PI = 3.14159; M.C Alejandro Castellanos Lopez20
21
Asignaciones Se utiliza el operador de asignación = – = ; – ;... = ; La parte izquierda siempre debe ser una variable La parte derecha puede ser un literal, una variable, una expresión, una función o una combinación de todos. – int x = 4; //Declaracion con asignación – x = 9; //Se asume que x está definida M.C Alejandro Castellanos Lopez21
22
Un programa Simple public class ProgramaSimple { public static void main(String[] args) { System.out.println("Este es” +”un programa simple"); System.exit(0); } M.C Alejandro Castellanos Lopez22
23
Java en detalle Inicialización de Variables El lenguaje Java es fuertemente tipado, lo que significa que todas las variables deben ser declaradas antes de utilizarse. int unaVariable = 1; M.C Alejandro Castellanos Lopez23
24
Tipos de Datos y Operadores
25
Tipos de Datos Java define dos tipos de datos – Tipos primitivos – Tipos referencia Los tipos primitivos son ocho agrupados en cuatro categorías: – Lógico: boolean – Texto: char – Entero:byte, short, int, long – Real: float, double Los tipos referencia son apuntadores a objetos. M.C Alejandro Castellanos Lopez25
26
Java en detalle Tipos Primitivos M.C Alejandro Castellanos Lopez26
27
Java en detalle Tipos Primitivos (II) M.C Alejandro Castellanos Lopez27
28
Tipos de datos Referencia Un tipo referencia guarda un apuntador a la dirección donde se ubica el objeto (32 bits). Sólo puede almacenar objetos de su propio tipo. Ejemplo: Cuadrado cuad1, cuad2; Circulo circ1; cuad1 = new Cuadrado(); circ1 = cuad1; // Error de compliación cuad2 = cuad1’; // Ok Todas las clases son de tipo referencia. El valor que toma por defecto una variable de tipo referencia es null. M.C Alejandro Castellanos Lopez28
29
La clase String Java provee soporte especial para las cadenas de caracteres a través de la clase java.lang.String No es un tipo primitivo. Sin embargo, mediante sobrecarga de operadores pueden realizarse operaciones como: String unString = “Juan” + “ ” + “Perez” ; Java también provee un amplio conjunto de operaciones para manipular las instancias de esta clase. M.C Alejandro Castellanos Lopez29
30
Cadenas de Caracteres La clase String permite manejar cadenas de caracteres. El literal string debe ir entre comillas dobles “”. Se puede crear una cadena de caracteres de dos formas: – String nombre = new String(“Pepe”); – String nombre = “Pepe”; Para concatenar dos cadenas se usa el operador +. No se guarda el carácter fin de cadena. M.C Alejandro Castellanos Lopez30
31
Conversiones de tipos La conversión de tipos (casting) debe realizarse entre tipos de la misma naturaleza: numéricos o referencia. Al convertir un tipo a un tamaño más pequeño se puede perder la información del los bits de mayor peso. No hay conversión automatica con el tipo boolean ! La sintaxis es: ( ) Ejemplo: int i = (int) 1.345; M.C Alejandro Castellanos Lopez31
32
Operadores: precedencia y funcionalidad M.C Alejandro Castellanos Lopez32
33
Operadores: precedencia y funcionalidad (II) M.C Alejandro Castellanos Lopez33
34
Ejemplo con operadores arimeticos int i=2+3; // i vale 5 i=i+1; //i vale 6 i=6*2; //i vale 12 i=2+5*2%8; //i vale4 M.C Alejandro Castellanos Lopez34
35
Ejemplo con operadores posfix y unarios int i=5; // i vale 5 System.out.println(i); //Imprime:5 System.out.println(++i); //Imprime:6 System.out.println(i++); //Imprime:6 System.out.println(i); //Imprime:7 M.C Alejandro Castellanos Lopez35
36
Ejemplos de paquetes Java java.io – El paquete de entrada/salida contiene las clases de acceso a archivos: FileInputStream y FileOutputStream, etc. java.lang – Incluye las clases del lenguaje Java propiamente dicho: Object, Thread, Exception, System, Integer, Float, Math, String, etc. java.util – Miscelánea de clases útiles para muchas cosas en programación. – Incluyen, Date (fecha), Dictionary (diccionario), Random (números aleatorios) y Stack (pila FIFO ). M.C Alejandro Castellanos Lopez36
37
java.lang Tipos primitivos encapsulados en clases: – Boolean – Byte – Character – Double – Float – Integer – Long – Short – Void M.C Alejandro Castellanos Lopez37
38
java.lang Ejemplo: Integer (interfaz pública): – public final class Integer extends Number – Variables: MAX_VALUE (valor mayor de “int”) MIN_VALUE (valor mínimo de “int”) – Constructores: Integer(int) Integer(String) – Métodos: Conversión a otros tipos: doubleValue(), floatValue(), intValue(), parseInt(String), toString(), valueOf(String) Obtención de valor como un “int”: intValue() M.C Alejandro Castellanos Lopez38
39
java.lang Constructores: – String(byte[]) – String(char[]) – String(String) Ejemplos: char[] chars = {’a’,’b’,’c’}; String s = new String(chars); String s1 = “Hello”; String s2 = new String(s1); M.C Alejandro Castellanos Lopez39
40
java.lang Métodos de manipulación de strings: – length(), concat(String), indexOf(String), lastIndexOf(String), toUpperCase(),... Métodos de conversión desde otros tipos: – valueOf(double), valueOf(int),... Operador “+” en strings está sobrecargado: – 3+”abc”+3.4 M.C Alejandro Castellanos Lopez40
41
java.lang Clase Math Constantes: – E, PI Métodos: – abs(double), acos(double), asin(double), atan, cos, exp, log, max(double, double), pow(double, double), round (float) M.C Alejandro Castellanos Lopez41
42
Otros paquetes Package java.util – Clases: Vector, Date, HashMap, StringTokenizer… Package java.text – Clases: DateFormat, DecimalFormat… (sirven para variantes de formato). Package java.math – Clases: BigDecimal, BigInteger… (arbitraria precisión y capacidad). M.C Alejandro Castellanos Lopez42
43
M.C Alejandro Castellanos Lopez43
44
M.C Alejandro Castellanos Lopez44
45
M.C Alejandro Castellanos Lopez A=5 B=3 C=7 D=2 45
46
M.C Alejandro Castellanos Lopez Desarrollar un programa en Java para convertir 46
47
¿Preguntas? M.C Alejandro Castellanos Lopez47
Presentaciones similares
© 2025 SlidePlayer.es Inc.
All rights reserved.