c01 fundamentos a java
TRANSCRIPT
-
7/24/2019 c01 Fundamentos a Java
1/56
FUNDAMENTOS DE JAVA
Programacin III
Ing. Luis Reyes
-
7/24/2019 c01 Fundamentos a Java
2/56
Objetivos
Conocer el entorno de preparacin de lostipos de datos permitidos
Conocer los operadores disponibles
Conocer el uso sintctico de algunasinstrucciones
-
7/24/2019 c01 Fundamentos a Java
3/56
Contenido Introduccin (repaso) Tipos
Tipos Bsicos
Variables
Conversin de tipos Cadenas de Caracteres
Arrays
Operadores
Control de Flujo E/S bsica
Atributos y Mtodos
-
7/24/2019 c01 Fundamentos a Java
4/56
Introduccin:Historia de Java Sun Microsystems (Patrick Naughton y James
Gosling)
Necesaria portabilidad de cdigo
Inicialmente orientado a Internet Impulsado por compatibilidad con Netscape
Navigator (navegador de Internet)
-
7/24/2019 c01 Fundamentos a Java
5/56
Introduccin:Historia de Java Versiones
1996: Java v1.0
1998: Java2 (v1.2). Gran paso adelante.
Actual: J2SE v1.6 Prcticas
J2SE (Java 2 Standard Edition) v1.5 Gratuito: http://java.sun.com(original)
Eclipse v3.1.1 Gratuito: http://www.eclipse.org
http://netbeans.org
Versiones para Windows, Linux, etc.
http://java.sun.com/http://www.eclipse.org/http://netbeans.org/http://netbeans.org/http://www.eclipse.org/http://java.sun.com/ -
7/24/2019 c01 Fundamentos a Java
6/56
Introduccin:Caractersticas Principales Orientado a Objetos Totalmente Portable
Lenguaje Interpretado (compilado a cdigo
intermedio, no a cdigo mquina) Java Virtual Machine (JVM)
ByteCode: Independiente de la maquina
Gestin Automtica de Memoria Dinmica Recolector de basura (Garbage Collector)
Case Sensitive (Sensible a Mays. / Minus.)
-
7/24/2019 c01 Fundamentos a Java
7/56
Introduccin:Caractersticas Principales Compilador:javac Interprete:java
Plataforma de ejecucin: JRE(Java Runtime
Environment): Incluye JVM
Plataforma de desarrollo: Java SDK(JavaSoftware Development Kit): Incluye Compilador, etc.
Incluye JRE
-
7/24/2019 c01 Fundamentos a Java
8/56
Introduccin:Hello World
_______________
-
7/24/2019 c01 Fundamentos a Java
9/56
Introduccin:Hello World
El archivo fuente con extensin .java se compila ygenera el archivo con extensin .class
Al ejecutar el programa (opcionalmente con laextensin .class) genera el resultado en pantalla.
-
7/24/2019 c01 Fundamentos a Java
10/56
Tipos:Tipos Bsicos Enteros
long
int
short byte
Coma Flotante float
double Caracteres
Lgicos
-
7/24/2019 c01 Fundamentos a Java
11/56
Tipos:Tipos Bsicos: Enteros Enteros Siempre con signo
Cuatro tipos: byte, short, int, long
Rango independiente de la plataforma Enteros por defecto son tipo int
Para long aadir L al final
989493849859L -284829848L
-
7/24/2019 c01 Fundamentos a Java
12/56
Tipos:Tipos Bsicos: Punto Flotante Punto Flotante
Dos tipos: float,double
Flotantes por defecto son tipo double
Para float aadir F al final 3.45E+21F -284829848F
-
7/24/2019 c01 Fundamentos a Java
13/56
Tipos:Tipos Bsicos: Punto Flotante Valores especiales de float y double:
Infinity, -Infinity, NaN (Not a Number)
_______________
-
7/24/2019 c01 Fundamentos a Java
14/56
Compilacin y Ejecucin
El significado de las respuestas son:
1. El resultado no es un nmero2. El resultado es infinito
3. El resultado es infinito pero negativo
-
7/24/2019 c01 Fundamentos a Java
15/56
Tipos:Tipos Bsicos: Caracteres Caracteres
16 bits -> UNICODE
Entre comillas simples: a, A, b
Secuencias de escape: \b, \t, \r, \n, \, \, \\ Mediante cdigo unicode: \u0041
Hexadecimal: \x41
-
7/24/2019 c01 Fundamentos a Java
16/56
Tipos:Tipos Bsicos: Envoltorios En Java, todo excepto
los tipos bsicos sonclases y objetos(heredan de Object)
Existen objetos queenvuelven a los tiposbsicos
Estos objetos tienen
mtodos tiles paratratar con los tiposbsicos
-
7/24/2019 c01 Fundamentos a Java
17/56
Tipos:Tipos Bsicos: Envoltorios
_______________
-
7/24/2019 c01 Fundamentos a Java
18/56
Compilacin y Ejecucin
-
7/24/2019 c01 Fundamentos a Java
19/56
Tipos: Variables
Necesario declarar lavariable antes de utilizarla
mbito: el bloque de cdigoen el que est declarada(delimitado por llaves {})
tipo identificador [=valor][,identificador[=valor]];
-
7/24/2019 c01 Fundamentos a Java
20/56
Tipos: Conversin de Tipos
Cuando es posible, se realiza de formaautomtica
En otros casos, forzado por el programador:castings
-
7/24/2019 c01 Fundamentos a Java
21/56
Tipos: Cadenas de caracteres
Cadenas de Caracteres Entre comillas dobles
Clase de utilidad String
Operador de concatenacin +
-
7/24/2019 c01 Fundamentos a Java
22/56
Tipos: Arrays
Conjunto de datos de un tipo determinado
Copia de Arrays (System.arrayCopy)Arrays Multidimensionales
-
7/24/2019 c01 Fundamentos a Java
23/56
Tipos: Arrays
_______________
-
7/24/2019 c01 Fundamentos a Java
24/56
Compilacin y Ejecucin
El valor 2 ya no es mostrado porque se
genera un error debido a que el ndice 45 noest definido en el arreglo
-
7/24/2019 c01 Fundamentos a Java
25/56
Tipos: arrays
-
7/24/2019 c01 Fundamentos a Java
26/56
Tipos: arrays
Para acceder a la longitud (tamao) de unarray: length
_______________
-
7/24/2019 c01 Fundamentos a Java
27/56
Operadores: Aritmticos
Operadores Aritmticos: +, -, *, /, %, ++,-- ++y --son operadores de incremento, pueden
ir como prefijo o sufijo, y tienen distinta
precedencia
-
7/24/2019 c01 Fundamentos a Java
28/56
Compilacin y Ejecucin
Anlisis del resultado: Al crear la variablejse asigna el valor 5
Cuando se crea kse le asigna el valor de 5el cual es el valorque poseejen ese momento.
Sin embargo en ese momento k = j++. Como posee el operador++, despus de asignar el contenido dej( el valor era 5), seincrementa en 1 la variablej.
Cuando se crea la variable lse muestra el operador l = ++j loque indica que antes de asignar el valor que tiene la variablej (6
en ese momento) lo incrementa en 1 y luego asigna el valor 7.
-
7/24/2019 c01 Fundamentos a Java
29/56
Operadores: Aritmticos
-
7/24/2019 c01 Fundamentos a Java
30/56
Compilacin y Ejecucin
-
7/24/2019 c01 Fundamentos a Java
31/56
Operadores: Relacionales
Sirven para comparaciones Operadores relacionales: ==, !=, >, =,
-
7/24/2019 c01 Fundamentos a Java
32/56
Compilacin y Ejecucin
-
7/24/2019 c01 Fundamentos a Java
33/56
Operadores: Lgicos Operadores lgicos: &,|, &&, ||, ! &: And, &&: And en cortocircuito
|: Or, ||: Or en cortocircuito
Operadores en cortocircuito dejan de evaluar cuando
se conoce a ciencia cierta el resultado
-
7/24/2019 c01 Fundamentos a Java
34/56
Operadores: Lgicos
-
7/24/2019 c01 Fundamentos a Java
35/56
Compilacin y Ejecucin
-
7/24/2019 c01 Fundamentos a Java
36/56
Operadores: Lgicos
-
7/24/2019 c01 Fundamentos a Java
37/56
Operadores: A nivel de Bit
Aplicables a enteros (int, long, short, char,byte)
Operadores a nivel de bit: ~, &, |, ^, >>, >>>,
-
7/24/2019 c01 Fundamentos a Java
38/56
Operadores: A nivel de Bit
_______________
-
7/24/2019 c01 Fundamentos a Java
39/56
Operadores: Asignacin
Operadores de Asignacin: ~=, +=, -=, *=, /=,%=, &=, |=, ^=, =, >>>=
a = a + 5;
a += 5; boolean b = a > 5 ? true : false;
-
7/24/2019 c01 Fundamentos a Java
40/56
Operadores: Asignacin
-
7/24/2019 c01 Fundamentos a Java
41/56
Operadores: Precedencia
-
7/24/2019 c01 Fundamentos a Java
42/56
Control de Flujo: if-else
_______________
-
7/24/2019 c01 Fundamentos a Java
43/56
Control de flujo: switch
-
7/24/2019 c01 Fundamentos a Java
44/56
Control de flujo: switch
-
7/24/2019 c01 Fundamentos a Java
45/56
Control de Flujo: while
-
7/24/2019 c01 Fundamentos a Java
46/56
Control de flujo: for
-
7/24/2019 c01 Fundamentos a Java
47/56
Control de flujo: do-while
-
7/24/2019 c01 Fundamentos a Java
48/56
Control de flujo: break y continue
breaksale de la ejecucin del bucle continuesalta a la siguiente ejecucin del
bucle
E/S B i
-
7/24/2019 c01 Fundamentos a Java
49/56
E/S Bsica:Flujos de datos Utilizacin de flujos de datos
(streams)
Paquete java.io
java.io.InputStreamjava.io.OutputStream
FileInputStream,
BufferedInputStream, .
E/S B i
-
7/24/2019 c01 Fundamentos a Java
50/56
E/S Bsica:Entradas y Salidas estndar System.out-> Salida estndar System.err-> Salida con errores
System.in-> Entrada estndar
At ib t Mt d
-
7/24/2019 c01 Fundamentos a Java
51/56
Atributos y Mtodos:Paso de parmetros
Los objetos se pasan por referencia.
Los tipos bsicos se pasan por valor
-
7/24/2019 c01 Fundamentos a Java
52/56
_______________
-
7/24/2019 c01 Fundamentos a Java
53/56
Compilacin y Ejecucin
-
7/24/2019 c01 Fundamentos a Java
54/56
-
7/24/2019 c01 Fundamentos a Java
55/56
Compilacin y Ejecucin
-
7/24/2019 c01 Fundamentos a Java
56/56